Naperg

screenshot of Naperg
express
react
prisma

Naperg

Fullstack Boilerplate GraphQL. Made with React & Prisma + authentication & roles

Overview:

The Naperg project is a scalable GraphQL server built with Apollo Server and Apollo Client. It is designed to be easily adjustable and extendable, with pre-configured support for GraphQL Playground. The project includes a frontend built with React and Material-UI, and a backend built with ExpressJS and Prisma. It uses SQLite as the default database, but can be replaced with other databases such as PostgreSQL or MySQL. The project is made with TypeScript and is open to contributions.

Features:

  • Scalable GraphQL server using Apollo Server
  • Pre-configured setup for Apollo Client
  • Out-of-the-box support for GraphQL Playground
  • Simple and flexible data model for easy adjustment and extension
  • Search functionality with GraphQL for users' email and name fields
  • Signup management with password strength checking

Installation:

To install the Naperg project, follow these steps:

  1. Clone the repository to your computer.
  2. Go to the repository server.
  3. Install the server dependencies by running: # Prisma & Graphql (port 4000)
  4. Migrate the database with Prisma migrate by running: Prisma migrate run
    • If needed, you can reset your database using Prisma Reset.
  5. Seed your database with the following command: Prisma Seed
    • This will create a new user from the seed.ts file with the following credentials:
      • Login: admin@naperg.com
      • Password: admin
      • Role: ADMIN
  6. Check your database using Prisma Studio.
  7. Generate the Prisma client by running: Prisma Generate
  8. Start the server at http://localhost:4000.

To install the frontend, follow these additional steps:

  1. Install the frontend dependencies by running: ReactJs (port 3000)
  2. Start the frontend.
  3. Go to the URL: http://localhost:3000
  4. Log in to the app using the Admin User credentials:
    • Login: admin@naperg.com
    • Password: admin
    • Role: ADMIN

Summary:

The Naperg project is a scalable GraphQL server and frontend built with Apollo Server, Apollo Client, React, and Material-UI. It provides pre-configured support for GraphQL Playground and includes features such as search functionality, signup management, and a flexible data model. The project is made with TypeScript and uses Prisma as the ORM and SQLite as the default database. It is open to contributions and feedback.

express
Express

Express.js is a simple Node.js framework for single, multi-page, and hybrid web applications.

react
React

React is a widely used JavaScript library for building user interfaces and single-page applications. It follows a component-based architecture and uses a virtual DOM to efficiently update and render UI components

prisma
Prisma

Prisma is a server-side library that helps developers read and write data to the database in an intuitive, efficient and safe way.

fullstack
Fullstack Boilerplates

A fullstack boilerplate provides a starter application that includes both frontend and backend. It should include database, auth, payments, user roles and other backend services to build a fully featured saas or webapps.

apollo
Apollo

Apollo is an open-source platform for building GraphQL APIs that connects with any data source. It provides a powerful set of tools and features for developers, including client and server-side caching, real-time data synchronization, and a seamless integration with popular frontend frameworks.