/nextcrm-app

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

Primary LanguageTypeScriptMIT LicenseMIT

OG

X (formerly Twitter) URL GitHub License

Introduction · Tech Stack + Features · Roadmap · Installation · Repo activity · License · Discord


Online Demo

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

Tech Stack + Features

Frameworks

  • Next.js – React framework for building performant apps with the best developer experience
  • Auth.js – Handle user authentication with ease with providers like Google, Twitter, GitHub, etc.
  • Prisma – Typescript-first ORM for Node.js
  • React Email – Versatile email framework for efficient and flexible email development

Platforms

  • Vercel – Easily preview & deploy changes with git
  • Mongo DB Atlas – A database platform for seamless, scalable data management
  • Resend – A powerful email framework for streamlined email development together with react.email

Data fetching

  • SWR – React Hooks library for remote data fetching
  • Axios – Promise based HTTP client for the browser and node.js
  • Server Actions - for server side data fetching
  • Tanstack/react-query - for server/client side data fetching

UI

AI

  • OpenAI API - for automated email notifications generated by AI
  • Rossum - for invoice data parsing with AI

hero

Roadmap

  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
X (formerly Twitter) URL

Contributing

We are open to the NextCRM community contributions. Every contribution is welcome.

Issues

  • Open an issue if you find a bug or have a suggestion for improvements.

NextCRM Super heroes

Made with contrib.rocks.

Repo Activity

Alt

Star History

Star History Chart

License

Licensed under the MIT license.