All Projects → Sumukh → Ignite

Sumukh / Ignite

Licence: other
A comprehensive Flask boilerplate to build SaaS applications that includes Stripe billing, emails, login, and OAuth.

Programming Languages

HTML
75241 projects
CSS
56736 projects
python
139335 projects - #7 most used programming language
javascript
184084 projects - #8 most used programming language
Jinja
831 projects
Makefile
30231 projects

Projects that are alternatives of or similar to Ignite

Vue Electron Typescript Quickstart
A boilerplate of Electron app that uses Vue in TypeScript.
Stars: ✭ 22 (-78.43%)
Mutual labels:  boilerplate-template, starter
Generator Create Redux App
Add redux, emotion-js and other useful libraries like react-router in top of create-react-app
Stars: ✭ 137 (+34.31%)
Mutual labels:  starter, scaffolding
vuelectro
Bare minimum, simplistic, production ready scaffolding/build tool for developing with Electron and Vue.Js
Stars: ✭ 19 (-81.37%)
Mutual labels:  boilerplate-template, scaffolding
Scaffold Static
Scaffolding utility for vanilla-js
Stars: ✭ 111 (+8.82%)
Mutual labels:  boilerplate-template, scaffolding
Flutter login signup
Basic login and signup screen designed in flutter
Stars: ✭ 375 (+267.65%)
Mutual labels:  login, boilerplate-template
create-next-stack
Create Next Stack is a website and CLI tool used to easily set up the boilerplate of new Next.js apps.
Stars: ✭ 149 (+46.08%)
Mutual labels:  starter, scaffolding
react-redux-nextjs-bootstrap-starter
next + react + redux + bootstrap starter
Stars: ✭ 24 (-76.47%)
Mutual labels:  boilerplate-template, starter
frontenso-11ty-starter
Production-ready 11ty+Gulp+Webpack Starter that features Nunjucks, SASS, TailwindCSS (with JIT complier), and ESNext.
Stars: ✭ 24 (-76.47%)
Mutual labels:  boilerplate-template, starter
dailycodingproblem
Solutions to Daily Coding Problem questions
Stars: ✭ 26 (-74.51%)
Mutual labels:  stripe
Swift-ISO8601-DurationParser
Swift ISO8601 Parser
Stars: ✭ 24 (-76.47%)
Mutual labels:  foundation
vividus-starter
VIVIDUS-based test project template
Stars: ✭ 43 (-57.84%)
Mutual labels:  starter
react-elements-netlify-serverless
Digital Wallet payments with React Stripe Elements and Netlify Functions
Stars: ✭ 21 (-79.41%)
Mutual labels:  stripe
aho
ultra simple project scaffolding
Stars: ✭ 64 (-37.25%)
Mutual labels:  scaffolding
SQRL
Secure Quick Reliable Login WebExtension for Firefox and Chrome
Stars: ✭ 57 (-44.12%)
Mutual labels:  login
angular-library-starter
🎩 A Minimalist Starter for Angular (v2+) libraries (w/ AOT support)
Stars: ✭ 71 (-30.39%)
Mutual labels:  starter
logSys
PHP Secure, Advanced Login System
Stars: ✭ 80 (-21.57%)
Mutual labels:  login
material2-admin
Angular - Material2 - Redux - Flex - Admin Example - Starter
Stars: ✭ 13 (-87.25%)
Mutual labels:  starter
go-preact-starter
Starter for combining Go and Preact in any web project.
Stars: ✭ 19 (-81.37%)
Mutual labels:  starter
dynamic-app
Dynamic Forms Builder are reusable and make building large-scale applications easier (Easy Peasy)
Stars: ✭ 15 (-85.29%)
Mutual labels:  scaffolding
Larabye
🎉 Larabye (Laravel + Rockabye) is a mini PHP starter / framework inspired from laravel features
Stars: ✭ 31 (-69.61%)
Mutual labels:  starter

Ignite

Ignite for Flask Flask PyTest CI

Ignite is a scaffold for starting new Flask applications. It takes care of the boilerplate code (like User Registration, OAuth, Teams, and Billing), allowing you to focus on building your application. Ignite is built upon best practices for modern Flask applications.

Features

Features Status Details
User Authentication User Login, Registration, Forgot Password, Email Confirmation
OAuth Login Login or Register with Google, Twitter, Facebook, etc.
Teams/Groups Multi user teams & groups (with Invite Emails)
User Export & Deletion Request Allows users to export their data (for GDPR compliance)
API API (with user tokens) users to access data
Stripe Product Checkout One time item purchases with credit cards and receipts (using Stripe)
Heroku/Docker Deployment Deployment instructions for some platforms. Works on AWS & Google Cloud
Send Emails Send email notifications from the application
Admin Dashboard Admin dashboard to edit data
File Uploads File uploads to cloud storage providers
Basic Test Suite Starting point for you to build out tests
VS Code Debugger & Editor Configured to make you productive
Tested on Windows 10, OSX, and Ubuntu Using Python 3
SaaS Recurring Billing 💲 (Requires purchasing a license to Ignite) Team Billing, Usage Based Billing or Unlimited Plans
Commercial Usage 💲 (License Required) Commercial Usage requires a purchased license
Video Content 💲 Available as part of the Fullstack Flask course

How to Buy

Store Comes With Price
Fullstack Flask Course The Fullstack Flask Course & Book, hours of videos explaining how to build a SaaS in Flask, and a single license to Ignite Pro On Sale (for ~$199) at Newline »
Commercial License A license for usage on a single site ($199) »

Setup

Usage of Python 3 is required. It can be installed on Python.org

# Optional but recommended:
python3 -m venv env; source env/bin/activate

pip install -r requirements.txt
./manage.py server # or `FLASK_APP=manage FLASK_ENV=development flask run`

Running

# Development
# If using a virtual env: source env/bin/activate
./manage.py resetdb # to seed data
FLASK_APP=manage FLASK_ENV=development flask run

# Go to localhost:5000 in a browser and click on Login
# Login with the following credentials "[email protected]", "test

# Production documentation in the repository.

Testing

Github Actions is configured to run tests and produce code coverage metrics.

To run tests locally, try this command:

APPNAME_ENV=test ./manage.py test --coverage

Local Secrets

To configure OAuth login and Stripe billing in development, you will need to set some environment variables. See .env.local.sample for an example.

cp .env.local.sample .env.local
# Edit .env.local with your Stripe & Google test keys
source .env.local
flask run

You may also want to change some of the constants in appname.constants

Deployment

Ignite is not tied to a specific platform for deployment, but it works well on Heroku and Dokku with minimal configuration.

It is also designed to work well on other cloud providers such as AWS, Google Cloud, and DigitalOcean.

Documentation is currently provided for installations on Dokku.

Stripe Webhooks Locally

  • Install the Stripe CLI
  • Login to the Stripe CLI (stripe login)
  • Run stripe listen --forward-to localhost:5000/webhooks/stripe
  • Use the webhook secret and configure your app to use it (export STRIPE_WEBHOOK_SECRET=whsec_...)
  • To replay an event in a seperate console: stripe events resend evt_XYZ

Screenshots

Screenshot Name
Login / Signup / OAuth / Password Reset login
Dashboard Dashboard
Saas Subscription Billing + Console Billing
Teams Team
GDPR/Legal GDPR
Admin Admin
API Tokens API
Delayed Jobs Jobs
Emails Emails
File Uploads Files
Stripe Customer Portal Integration Stripe

License

This is a commercial product. You may purchase a license for commercial use at Ignite Website

Here's a summary:

Features Ignite (License) Ignite Premium
Cost Free $199 per site
Private Non Commercial Use
Commercial Use No
Ability to remove "Powered by Ignite" footer No
Video Tutorials No
Re-license No Contact us
Support No No
Warranty Provided As-is Provided As-is
Refunds N/A 30 Day

You can purchase a license at the Ignite Store or on Newline as part of the Fullstack Flask course

For more detailed license information see LICENSE.md

Credits

Design elements from tabler & Bootstrap 4.

Built off of Flask Foundation and the bootstrapy project

Extra Reading

Only building out an API using Flask?

Course: Fullstack Flask: Build a SaaS using Python and Flask

Best practices List:

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].