Skip to content

Latest commit

 

History

History
150 lines (95 loc) · 3.84 KB

File metadata and controls

150 lines (95 loc) · 3.84 KB

NextCRM

NextCRM is a CRM build on top of the Next.JS 13.4 using TypeScript, great UI library shadcn, Prisma and MongoDB as a database. Upload things as a S3 blob for document storage.

Online Demo

You can try it here demo.nextcrm.io, login via Google account or create new user and password.

What we used to build it

Next.js - React framework
shadcn - UI
Prisma ORM - together with MongoDB (tested with version 5.0)
useSWR - for client side data fetching
NextAUTH - for user authentication
Rossum - for invoice data parsing with AI
OpenAI API - for automated email notifications
Tremor - for creating charts
resend.com - together with react.email

hero

What we plan to build next

  1. More AI powered - daily summary of tasks and project (OpenAI integration) - in progress
  2. Email campaigns management - integration with MailChimp and Listmonk - in planning
  3. Docker version - in planning (There will be complete bundle to run NextCRM on-premise)
  4. Testing - Jest + Cypress (if anyone want to help I will be very happy) - in planning
  5. Fix all Types issue (no more "any") - in progress
  6. i18n - localization - in progress (if anyone want to help I will be very happy)
  7. Turborepo - in planning
  8. Upgrade to Next.js 14 - in planning
  9. Email client - in planning

Emails

We use resend.com + react.email as primary email sender and email templates.

Reports

We use Tremor charts as a tool for creating charts in NextCRM

hero

Video (YouTube channel with functions showcase)

Youtube Channel
Invoice module (video)

Documentation

Available soon at: http://docs.nextcrm.io

Installation

Show instructions
  1. Clone the repository:

    git clone https://github.com/pdovhomilja/nextcrm-app.git
    cd nextcrm-app
  2. Install the preset:

    npm install
  3. Copy the environment variables to .env

    cp .env.example .env
    cp .env.local.example .env.local

    .env

    • You will need mongodb URI string for Prisma ORM

    .env.local

    • NextAUTH - for auth
    • uploadthings - for storing files
    • rossum - for invoice data exporting
    • openAI - for automatic Project management assistant
    • SMPT and IMAP for emails
  4. Init Prisma

     npx prisma generate
     npx prisma db push
  5. Import initial data from initial-data folder

    npx prisma db seed
  6. Run app on local

    npm run dev
  7. http://localhost:3000

Docker installation

Link to Docker HUB

Show instructions
  1. MongoDB URI string for Prisma ORM:

  2. Install the preset:

    .env (for Prisma URI string) and .env.local (all others ENVs) file inside docker folder
    
  3. run docker-compose

    docker-compose up -d
  4. Init Prisma

     docker-compose exec nextcrm npx prisma generate
     docker-compose exec nextcrm npx prisma db push
  5. Import initial data from initial-data folder

    npx prisma db seed
  6. http://localhost:3000

Contact

www.dovhomilja.cz

License

Licensed under the MIT license.