hackathon-starter  by sahat

Node.js boilerplate for web applications

created 11 years ago
35,043 stars

Top 0.9% on sourcepulse

GitHubView on GitHub
Project Summary

This repository provides a comprehensive Node.js web application boilerplate designed to accelerate hackathon projects and rapid prototyping. It offers pre-built solutions for common features like user authentication (local and OAuth), profile management, and contact forms, significantly reducing setup time for developers.

How It Works

The starter utilizes Express.js for the web framework, Pug for templating, and Mongoose for MongoDB interaction. It integrates Passport.js for robust authentication strategies, supporting local sign-in, OAuth 2.0 with multiple providers (Google, Facebook, GitHub, etc.), and OpenID Connect. The project is structured with a clear MVC pattern, separating concerns into controllers, models, and views for maintainability.

Quick Start & Requirements

  • Install dependencies: npm install
  • Start the application: npm start
  • Prerequisites: Node.js (v22.12+), MongoDB (local or hosted).
  • Recommended: Nodemon for automatic server restarts.
  • Full setup guide and API key acquisition details are available in the README.

Highlighted Details

  • Extensive OAuth 2.0 support for numerous providers (Google, Facebook, X, GitHub, Discord, Twitch, LinkedIn).
  • Integrated AI features for OpenAI moderation and LLAMA models via Together AI.
  • Includes examples for various third-party APIs like Stripe, Twilio, Lob (USPS), Google Drive, and more.
  • Features CSRF protection, rate limiting, and flash notifications.
  • Docker support for easy deployment.

Maintenance & Community

The project is actively maintained by Sahat Yalkabov, with positive community feedback cited in testimonials. Contributions are welcome via pull requests, though significant changes require prior issue discussion.

Licensing & Compatibility

  • License: MIT
  • This permissive license allows for commercial use and integration into closed-source projects.

Limitations & Caveats

While highly comprehensive, integrating custom HTML/CSS templates not based on Bootstrap requires manual adaptation of the grid system and view structure. The project's focus on simplicity means advanced features like WebSockets are not included by default but can be added.

Health Check
Last commit

3 days ago

Responsiveness

1 day

Pull Requests (30d)
2
Issues (30d)
1
Star History
134 stars in the last 90 days

Explore Similar Projects

Starred by Dan Abramov Dan Abramov(Core Contributor to React) and Jared Palmer Jared Palmer(Ex-VP of AI at Vercel; Founder of Turborepo; Author of Formik, TSDX).

retro-board by antoinejaussoin

0.1%
797
AI-powered agile retrospective board for engineering teams
created 9 years ago
updated 8 months ago
Feedback? Help us improve.