Awesome
<a href="https://nextcrm.app/"> <h1 align="center">NextCRM</h1> </a> <p align="center"> <img alt="OG" src="public/images/opengraph-image.png" /> </p> <!-- <p align="center"> NextCRM is a CRM build on top of the Next.JS 14 using TypeScript, great UI library shadcn, Prisma and MongoDB as a database. Upload things as a S3 blob for document storage. </p> --> <p align="center"> <a href="https://twitter.com/nextcrmapp"> <img alt="X (formerly Twitter) URL" src="https://img.shields.io/twitter/url?url=https%3A%2F%2Ftwitter.com%2Fnextcrmapp"> </a> <a href="https://github.com/pdovhomilja/nextcrm-app/blob/main/LICENSE"> <img alt="GitHub License" src="https://img.shields.io/github/license/pdovhomilja/nextcrm-app"> </a> </p> <p align="center"> <a href="#online-demo"><strong>Introduction</strong></a> · <a href="#tech-stack--features"><strong>Tech Stack + Features</strong></a> · <a href="#roadmap"><strong>Roadmap</strong></a> · <a href="#installation"><strong>Installation</strong></a> · <a href="#repo-activity"><strong>Repo activity</strong></a> · <a href="#license"><strong>License</strong></a> · <a href="https://discord.gg/dHyxhTEzUb"><strong>Discord</strong> </p> <br/>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
- Tailwind CSS – Utility-first CSS framework for rapid UI development
- Shadcn/ui – Re-usable components built using Radix UI and Tailwind CSS
- Tremor – A platform for creating charts
- react.email - together with resend.com
AI
- OpenAI API - for automated email notifications generated by AI
- Rossum - for invoice data parsing with AI
Roadmap
- More AI powered - daily summary of tasks and project (OpenAI integration) - in progress
- Email campaigns management - integration with MailChimp and Listmonk - in planning
Docker version - in planning (There will be complete bundle to run NextCRM on-premise)- Testing - Jest + Cypress (if anyone want to help I will be very happy) - in planning
- Fix all Types issue (no more "any") - in progress
- i18n - localization - in progress (if anyone want to help I will be very happy)
- Turborepo - in planning
Upgrade to Next.js 14 - in planning- 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
Video (YouTube channel with functions showcase)
Youtube Channel </br> Invoice module (video)
Documentation
Available soon at: http://docs.nextcrm.io
Installation
<details><summary><b>Show instructions</b></summary>-
Clone the repository:
git clone https://github.com/pdovhomilja/nextcrm-app.git cd nextcrm-app
-
Install the preset:
npm install
-
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
-
Init Prisma
npx prisma generate npx prisma db push
-
Import initial data from initial-data folder
npx prisma db seed
-
Run app on local
npm run dev
Docker installation
<details><summary><b>Show instructions</b></summary>-
MongoDB URI string for Prisma ORM:
-
Install the preset:
.env (for Prisma URI string) and .env.local (all others ENVs) file inside docker folder
-
run docker-compose
docker-compose up -d
-
Init Prisma
docker-compose exec nextcrm npx prisma generate docker-compose exec nextcrm npx prisma db push
-
Import initial data from initial-data folder
npx prisma db seed
Contact
www.dovhomilja.cz </br> <img alt="X (formerly Twitter) URL" src="https://img.shields.io/twitter/url?url=https%3A%2F%2Ftwitter.com%2Fdovhomilja">
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
<a href="https://github.com/pdovhomilja/nextcrm-app/graphs/contributors"> <img src="https://contrib.rocks/image?repo=pdovhomilja/nextcrm-app" /> </a>Made with contrib.rocks.
Repo Activity
Star History
License
Licensed under the MIT license.