aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNavan Chauhan <navanchauhan@gmail.com>2021-06-04 16:17:48 +0530
committerNavan Chauhan <navanchauhan@gmail.com>2021-06-04 16:17:48 +0530
commit29693b37d03c6db7d90e93ab5fdb14f3850fa7b8 (patch)
treee9256814dfe31e28c0c3dcc287ffad88270e4fa6
parent25c5a9b25459664938a60761b8f88e8254c9e7fa (diff)
added details to README
-rw-r--r--README.md70
1 files changed, 58 insertions, 12 deletions
diff --git a/README.md b/README.md
index e2b3983..3cef13c 100644
--- a/README.md
+++ b/README.md
@@ -1,28 +1,25 @@
# SaaS-in-a-Flask
+[![codecov](https://codecov.io/gh/navanchauhan/SaaS-in-a-Flask/branch/master/graph/badge.svg?token=ULbtVCRrrY)](https://codecov.io/gh/navanchauhan/SaaS-in-a-Flask)
+[![Flask Tests](https://github.com/navanchauhan/SaaS-in-a-Flask/actions/workflows/Flask-Tests.yaml/badge.svg)](https://github.com/navanchauhan/SaaS-in-a-Flask/actions/workflows/Flask-Tests.yaml)
+
In the wise words of @alectrocute:
> I've noticed SaaS bootstraps/boilerplates being sold upwards of $1,000 per year and I think that's fucking ridiculous.
-## Development
-
-### Generating requirements.txt for GitHub Actions
-
-`pipenv lock --dev -r > requirements.txt`
-
## Features
-- [x] Landing Page
+- [x] **Landing Page:** Written in Bootstrap 5, compatible with [Bootswatch Themes](https://bootswatch.com)
- [ ] Database Management
-- Authentication
+- **Authentication:** Using Flask-Login
- [x] Sign Up
- [x] Sign In
- [ ] OAuth2
- [ ] LDAP
- [ ] Forgot Password
- [ ] Confirm Email
- - [x] Password Hashing
-- [x] Form Handling
+ - [x] **Password Hashing:** Using Bcrypt (Flask-Bcrypt)
+- [x] **Form Handling:** With Flask-WTF using WTForms
- [x] Dashboard
- [x] GitHub Workflows
- [ ] Admin Pages
@@ -34,11 +31,60 @@ In the wise words of @alectrocute:
- [ ] Custom Exceptions
- [x] 404,500,401 e.t.c
- [ ] Async AJAX Calls
-- [ ] Tests
+- [x] **Tests:** Using PyTest
+- [x] **Code Coverage:** Using CodeCov
- [ ] Delayed Jobs
- [ ] Logging
- [ ] FastAPI Support
- Billing Handling
- [ ] Stripe
- [ ] GDPR Compliance / Data Export
-- [ ] Docker Images \ No newline at end of file
+- [ ] Docker Images
+
+## Quick How-Tos
+
+### Makefile
+
+#### Install Dependencies using pip
+
+```
+make install
+```
+
+#### Initialise Database
+
+```
+make db
+
+```
+
+#### Run Development Server
+
+```
+make dev
+
+```
+
+### Running Tests
+
+You need to be in the base directory of the repo to run tests.
+
+#### Using Pipenv
+
+```
+pipenv run tests
+```
+
+#### Manually
+
+```
+python -m pytest
+```
+
+#### GitHub Workflow
+
+The GitHub Workflow automatically installs all dependencies in the requirements.txt file and runs pytest on different Python 3 versions (3.7, 3.8 ,3.9). To generate the requirements.txt file from pipenv use `pipenv lock --dev -r > requirements.txt`
+
+### Code Coverage
+
+[Codecov](https://codecov.io) is used to automatically generate reports and upload to their website using a GitHub Action. Make sure to set up `CODECOV_TOKEN` secret in your repo to use the workflow. \ No newline at end of file