Codebase
Vue d’ensemble des répertoires du monorepo lomi principal et de l’application marchande.
Feuille de route
Nous ouvrons progressivement l’ensemble du projet lomi. :
-
Déjà en open source :
- Tableau de bord marchand
- Site de documentation : apps/developers
- Boilerplate storefront + Medusa : apps/store
- Boilerplate événements + Sanity : apps/events
- Boilerplate Vite + Medusa : apps/commerce
-
Bientôt :
- Service API : apps/api
- Extension Shopify : apps/shopify
- Outil CLI : apps/cli
Les dépôts seront fusionnés dans le monorepo dans les prochaines semaines.
Monorepo
Dépôt principal regroupant applications et packages partagés.
└── lomi./
├── README.md
├── CODE_OF_CONDUCT.md
├── CONTRIBUTING.md
├── LICENSE
├── SECURITY.md
└── apps/
├── admin/ # Admin dashboard/portal
├── api/ # Backend API
├── cli/ # Command-line interface tools
├── commerce/ # E-commerce boilerplate
├── developers/ # Developer documentation website (this app)
├── shopify/ # Shopify extension app
├── store/ # E-commerce boilerplate
├── events/ # E-commerce boilerplate
├── jumbo/ # AI-powered online IDE
└── website/ # Website and merchant dashboardTableau de bord marchand
Structure illustrative de l’application cœur avec laquelle les marchands interagissent ou qu’ils peuvent auto-héberger.
└── lomi./dashboard/ # Root directory for the merchant website/
├── README.md # Project documentation
├── bunfig.toml # Bun configuration file
├── components.json # UI component library configuration (e.g., shadcn/ui)
├── index.html # Main HTML entry point for Vite
├── package.json # Project dependencies and scripts
├── postcss.config.js # PostCSS configuration
├── tailwind.config.js # Tailwind CSS configuration
├── tsconfig.json # TypeScript configuration for the project
├── tsconfig.node.json # TypeScript configuration for Node.js specific parts (e.g., Vite config)
├── vercel.json # Vercel deployment configuration
├── vite.config.d.ts # Vite TypeScript declaration file
├── vite.config.ts # Vite build tool configuration
├── .env.example # Example environment variables file
├── .eslintrc.cjs # ESLint configuration file
├── api/ # Serverless functions/webhook handlers
....
├── public/ # Static assets served directly
│ ├── manifest.json # Web application manifest
│ ├── robots.txt # Instructions for web crawlers
│ ├── sitemap.xml # Sitemap for SEO
│ ├── assets/ # General static assets
│ │ └── lomi.brand.zip # Brand assets archive
│ ├── company/ # Company-related images/assets
....
│ ├── crypto/ # Cryptocurrency icons/assets
....
│ ├── customers/ # Customer logos/assets
....
│ ├── integrations/ # Integration partner logos/assets
....
│ ├── okra/ # Okra integration assets (if any)
│ ├── payment_channels/ # Payment channel icons/assets
....
│ ├── random/ # Miscellaneous images/assets
....
│ └── regulatory/ # Regulatory compliance logos/assets
....
├── src/ # Main application source code
│ ├── App.tsx # Root React application component
│ ├── env.d.ts # Environment variable type definitions
│ ├── i18n.ts # Internationalization setup (i18next)
│ ├── index.css # Global CSS styles or Tailwind base/imports
│ ├── main.tsx # Main entry point for the React app (renders App.tsx)
│ ├── router.tsx # Application routing setup (e.g., React Router)
│ ├── vite-env.d.ts # Vite environment type definitions
│ ├── api/ # Server-side API logic (if running a backend server alongside frontend)
│ │ ├── server.js # Main server file (if applicable)
│ │ ├── ai/ # AI-related API endpoints/logic
....
│ │ └── checkout/ # Checkout process API logic and associated components
....
│ ├── components/ # Reusable UI components
│ │ ├── aceternity/ # Specific UI library components (Aceternity UI)
....
│ │ ├── auth/ # Authentication-related UI components
....
│ │ ├── blog/ # Blog-specific UI components
....
│ │ ├── charts/ # Charting components
....
│ │ ├── custom/ # Custom, non-library base components
....
│ │ ├── design/ # Design system elements, layout, branding
....
│ │ ├── icons/ # Custom icon components
....
│ │ ├── landing/ # Components for the public landing pages
....
│ │ ├── metrics/ # Components for displaying metrics/stats
....
│ │ ├── mfa/ # Multi-Factor Authentication components
....
│ │ ├── portal/ # Components specific to the merchant portal/dashboard
....
│ │ │ ├── balance/ # Components for managing balance/payouts
....
│ │ │ ├── customers/ # Components for managing customers
....
│ │ │ ├── logs/ # Components for viewing logs (API, webhooks, etc.)
....
│ │ │ ├── payment-links/ # Components for managing payment links
....
│ │ │ ├── product/ # Components for managing products/services
....
│ │ │ ├── reporting/ # Components for viewing reports and analytics
....
│ │ │ ├── storefront/ # Components for customizing the hosted storefront/checkout
....
│ │ │ ├── subscription/ # Components for managing subscriptions
....
│ │ │ ├── transactions/ # Components for viewing transactions
....
│ │ │ └── webhooks/ # Components for managing webhook endpoints
....
│ │ ├── tables/ # Reusable table components & configurations
....
│ │ └── ui/ # Base UI elements (e.g., shadcn/ui library components)
....
│ ├── lib/ # Utility functions, contexts, hooks, shared logic
│ │ ├── formatter.ts # Formatting utilities (dates, currency, etc.)
│ │ ├── actions/ # Reusable functions (client/server actions, utils)
....
│ │ ├── contexts/ # React context providers/consumers
....
│ │ ├── data/ # Static data, constants, enums
....
│ │ ├── hooks/ # Custom React hooks
....
│ │ ├── i18n/ # Internationalization configuration files
....
│ │ ├── locales/ # Language translation files (JSON)
....
│ │ ├── routes/ # Route definitions or route-related utilities
....
│ │ ├── openapi/ # OpenAPI spec + Fumadocs API reference wiring
....
│ │ ├── services/ # Service integrations or API wrappers
....
│ │ ├── tools/ # Developer tools or specific complex utilities
....
│ │ └── types/ # TypeScript type definitions
....
│ ├── pages/ # Application pages/routes (likely file-based routing)
│ │ ├── auth/ # Authentication flow pages (login, signup, reset)
....
│ │ ├── blog/ # Blog pages
....
│ │ ├── checkout/ # Hosted checkout flow pages
....
│ │ ├── errors/ # Error pages (404, 500, etc.)
....
│ │ ├── landing/ # Public marketing/landing pages
....
│ │ └── portal/ # Merchant portal pages/dashboard sections
....
│ │ ├── settings/ # Settings pages within the portal
....
│ └── utils/ # Specific utility integrations (SDKs, clients)
│ ├── infobip/ # Infobip SMS/WhatsApp integration
....
│ ├── mixpanel/ # Mixpanel analytics integration
....
│ ├── np/
....
│ ├── orange/ # Orange Money integration
....
│ ├── redis/ # Redis client/utility
....
│ ├── resend/ # Resend email integration
....
│ ├── supabase/ # Supabase client utilities
....
│ └── wave/ # Wave Mobile Money integration
....
├── supabase/ # Supabase configuration and database migrations
│ ├── config.toml # Supabase CLI configuration
│ ├── seed.sql # Database seeding script (optional)
│ ├── .gitignore # Supabase specific gitignore rules
│ └── migrations/ # Database schema migration files (SQL)
....
└── .github/ # GitHub specific configurations
└── workflows/ # GitHub Actions CI/CD workflows
....Contribution
Les contributions sont les bienvenues pour améliorer lomi.. Problème ou suggestion : ouvrez une issue ou une pull request sur le dépôt GitHub.
Avant de contribuer :
- Lisez notre code de conduite
- Consultez la politique de sécurité
- N’altérez pas les fichiers marqués
/* @proprietary license */
Le détail se trouve dans CONTRIBUTING.md du monorepo.
Une question sur la façon d’aider ? Écrivez-nous !
Liens utiles
- Discord : communauté Discord
- Twitter : @lomiafrica
- GitHub : issues
- PR : pull requests
- E-mail : hello@lomi.africa
Open source
Nous voulons rendre les paiements rapides, adaptés et accessibles à tous. Notre technologie est entièrement publique et disponible en ligne.
Communauté
Nous pensons que les meilleurs produits se construisent avec les utilisateurs et les contributeurs. Notre croissance repose avant tout sur les besoins réels des marchands.