All Projects → MLH → Mlh Hackathon Flask Starter

MLH / Mlh Hackathon Flask Starter

Licence: mit
Hackathon starter project for Flask applications

Labels

Projects that are alternatives of or similar to Mlh Hackathon Flask Starter

Mini Shop Server
基于 Flask 框架开发的微信小程序后端项目,用于构建小程序商城后台 (电商相关;rbac权限管理;附带自动生成Swagger 风格的API 文档;可作「Python 项目毕设」;慕课网系列)---- 相关博客链接:🌟
Stars: ✭ 446 (-16.79%)
Mutual labels:  flask
Beibq
基于flask开发类似gitbook的知识管理网站。 http://demo.beibq.cn
Stars: ✭ 480 (-10.45%)
Mutual labels:  flask
Ihatemoney
A simple shared budget manager web application
Stars: ✭ 500 (-6.72%)
Mutual labels:  flask
Flask Socketio
Socket.IO integration for Flask applications.
Stars: ✭ 4,523 (+743.84%)
Mutual labels:  flask
Flask Restplus Boilerplate
A boilerplate for flask restful web service
Stars: ✭ 466 (-13.06%)
Mutual labels:  flask
Flask Monitoringdashboard
Automatically monitor the evolving performance of Flask/Python web services.
Stars: ✭ 483 (-9.89%)
Mutual labels:  flask
Maple Bbs
a forums system based on flask
Stars: ✭ 441 (-17.72%)
Mutual labels:  flask
Zenodo
Research. Shared.
Stars: ✭ 528 (-1.49%)
Mutual labels:  flask
Invenio
Invenio digital library framework
Stars: ✭ 469 (-12.5%)
Mutual labels:  flask
Cesi
CeSI is a web interface for managing multiple supervisors from the same place.
Stars: ✭ 500 (-6.72%)
Mutual labels:  flask
Full Stack
Full stack, modern web application generator. Using Flask, PostgreSQL DB, Docker, Swagger, automatic HTTPS and more.
Stars: ✭ 451 (-15.86%)
Mutual labels:  flask
Flask Vue Crud
Single Page App with Flask and Vue.js
Stars: ✭ 467 (-12.87%)
Mutual labels:  flask
Potion
Flask-Potion is a RESTful API framework for Flask and SQLAlchemy, Peewee or MongoEngine
Stars: ✭ 484 (-9.7%)
Mutual labels:  flask
Pb
pb is a formerly-lightweight pastebin and url shortener
Stars: ✭ 448 (-16.42%)
Mutual labels:  flask
Swagger Py Codegen
a Python web framework generator supports Flask, Tornado, Falcon, Sanic
Stars: ✭ 508 (-5.22%)
Mutual labels:  flask
Bootstrap Flask
Bootstrap 4 helper for Flask/Jinja2.
Stars: ✭ 441 (-17.72%)
Mutual labels:  flask
Flask reddit
Reddit clone in flask + python + nginx + https. View site:
Stars: ✭ 482 (-10.07%)
Mutual labels:  flask
Gae Init
Google App Engine based on Python, Flask, RESTful, Bootstrap and tons of other cool features
Stars: ✭ 533 (-0.56%)
Mutual labels:  flask
Flask Gentelella
Gentelella template powered by Flask
Stars: ✭ 510 (-4.85%)
Mutual labels:  flask
Minimal Django
A lightweight Django project - because Django can be nearly as simple as a microframework
Stars: ✭ 490 (-8.58%)
Mutual labels:  flask

Introduction

This is a hackathon boilerplate for new Flask web applications created by Major League Hacking. It is for hackers looking to get started quickly on a new hackathon project using the Flask microframework.

Installation Guide

This project requires the following tools:

  • Python - The programming language used by Flask.
  • PostgreSQL - A relational database system.
  • Virtualenv - A tool for creating isolated Python environments.

To get started, install Python and Postgres on your local computer if you don't have them already. A simple way for Mac OS X users to install Postgres is using Postgres.app. You can optionally use another database system instead of Postgres, like SQLite.

Getting Started

Step 1. Clone the code into a fresh folder

$ git clone https://github.com/MLH/mlh-hackathon-flask-starter.git
$ cd mlh-hackathon-flask-starter

Step 2. Create a Virtual Environment and install Dependencies.

Create a new Virtual Environment for the project and activate it. If you don't have the virtualenv command yet, you can find installation instructions here. Learn more about Virtual Environments.

$ virtualenv venv
$ source venv/bin/activate

Next, we need to install the project dependencies, which are listed in requirements.txt.

(venv) $ pip install -r requirements.txt

Step 3: Create an app on GitHub

Head over to GitHub OAuth apps and create a new OAuth app. Name it what you like but you'll need to specify a callback URL, which should be something like:

http://localhost:5000/auth/callback/github

The default port for Flask apps is 5000, but you may need to update this if your setup uses a different port or if you're hosting your app somewhere besides your local machine.

Step 4: Setup your database

You need to be able to connect to a database either on your own computer (locally) or through a hosted database. You can install Postgres locally and connect to it to provide the database for your app.

You will need to know the connection URL for your application which we will call DATABASE_URL in your environment variables. Here is an example:

postgresql://localhost:5432/mlh-hackathon-starter-flask

Step 5: Update environment variables and run the Server.

Create a new file named .env by duplicating .env.example. Update the new file with the GitHub credentials. It should look similar to this:

# .env file
DATABASE_URL="[INSERT_DATABASE_URL]"
GITHUB_CLIENT_ID="[INSERT_CLIENT_ID]"
GITHUB_CLIENT_SECRET="[INSERT_CLIENT_SECRET]"

You replace the GitHub credentials here and update the database URL. Learn more about the required Environment Variables here.

Now we're ready to start our server which is as simple as:

(venv) $ flask run

Open http://localhost:5000 to view it in your browser.

The app will automatically reload if you make changes to the code. You will see the build errors and warnings in the console.

What's Included?

  • Flask - A microframework for Python web applications
  • Flask Blueprints - A Flask extension for making modular applications
  • Flask-SQLAlchemy - A Flask extension that adds ORM support for your data models.
  • Werkzeug - A Flask framework that implements WSGI for handling requests.
  • Bootstrap 4 - An open source design system for HTML, CSS, and JS.
  • Jinja2 - A templating language for Python, used by Flask.

Code of Conduct

We enforce a Code of Conduct for all maintainers and contributors of this Guide. Read more in CONDUCT.md.

License

The Hackathon Starter Kit is open source software licensed as MIT.

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].