Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

advance starter - shipfaster #38

Open
Tobi-De opened this issue Jan 11, 2024 · 7 comments
Open

advance starter - shipfaster #38

Tobi-De opened this issue Jan 11, 2024 · 7 comments

Comments

@Tobi-De
Copy link
Collaborator

Tobi-De commented Jan 11, 2024

I want another version of the starter project, a more advanced version something similar to:

The idea is to ship and build faster, for now I've settled on falco shipfaster. I'm not sure if this will be an entirely new project blueprint or it will just update an existing project created with falco start-project.

But for now this is what I"m planning to include:

  • payment ( lemon squeezy)
  • caching with redis
  • sqlite for production using litestream for backup
  • everything in one container (s6 overlay)
  • a landing page with pricing section
  • a basic admin like interface for logged in users (profile, login, logout, change, password, change email, dashbaord etc..)
  • templates for login (with google enabled ? , github ???) and signup page
  • email setup (I often use AWS SES but maybe a simpler alternative, sendgrid, mailgun?)
  • background tasks with django-q2
  • django storages setup with AWS S3 for Media files

additional ideas:

  • optional postgres setup with pghoard for backup
  • daphne for async and realtime
  • Internationalization (french and english by default)
  • wagtail integration for CMS
  • features flags
  • something with user impersonation
  • a basic ecommerce store (maybe with https://github.com/dinoperovic/django-salesman)
  • a basic blog

add instructions on the docs for each components and how to swap them

Shipfaster will have it owns section on the docs and gallery

@Tobi-De Tobi-De changed the title advance starter advance starter - shipfaster Jan 14, 2024
@polar-sh polar-sh bot added the Fund label Jun 1, 2024
@Tobi-De Tobi-De removed the Fund label Jun 1, 2024
@Mte90
Copy link

Mte90 commented Sep 2, 2024

It is very interesting, maybe can be something with a prompt to asks what to add.
Maybe a folder inside the falco project where to put the various extra apps (maybe with a dedicated repo), on command they get moved to the right folder and added to the conf file.

@Tobi-De
Copy link
Collaborator Author

Tobi-De commented Sep 2, 2024

It is very interesting, maybe can be something with a prompt to asks what to add. Maybe a folder inside the falco project where to put the various extra apps (maybe with a dedicated repo), on command they get moved to the right folder and added to the conf file.

Interesting idea, thanks.

I'll take this opportunity to post an update.

My plan has evolved a bit. First, I'm not sure if I want a Shipfaster anymore. It’s more likely that I’ll add most of these features to the base or current templates, with maybe some flags to enable specific features. For example, SQLite production with Litestream is definitely coming. I'm already working on that here and just waiting a bit for the next LTS Django release, 5.2.

I don't use Redis anymore; I use DiskCache, which is already set up in the current version of the template. The s6-overlay for everything in one container is already happening. Django-Q2 is in place, but I'm planning to switch to django-tasks after it’s merged into Django. Django-storages is also in place. For the UI, I’ve landed on using DaisyUI, and I'm going to include some basic pages and customize allauth templates.

The real extras here that could go into options or flags (or maybe prompts, but I don't like that much):

  • Daphne for async and real-time features
  • Internationalization (French and English by default)
  • Wagtail integration for CMS (?????????)
  • Feature flags
  • Something with user impersonation
  • A basic eCommerce store (maybe with dinoperovic/django-salesman)
  • A basic blog

For the Postgres backup stuff, I'm thinking more of an Ansible script that sets up what's necessary on a server on the first setup. Since most of the time for my personal projects, I use one PG server with different databases, it’s not a process I do over and over again for each new app.

@Mte90
Copy link

Mte90 commented Sep 2, 2024

Cool updates indeed, I was looking for a boilerplate with the subscription system already on but I can't find it so I was following this tickets but after months of silence I just pinged here.

@Tobi-De
Copy link
Collaborator Author

Tobi-De commented Sep 2, 2024

Cool updates indeed, I was looking for a boilerplate with the subscription system already on but I can't find it so I was following this tickets but after months of silence I just pinged here.

SaasPegasus does this https://docs.saaspegasus.com/subscriptions/
Falco isn't there yet, but it's surely something people would want. I'll keep it in mind as a potential extra.

@Tobi-De
Copy link
Collaborator Author

Tobi-De commented Sep 2, 2024

I'll have to experiment with this myself a bit first, any specific recommendation of providers ? I guess stripe is the defacto option, I was thinking of lemon squeezy but since stripe bought them recently it's basically the same thing

@Mte90
Copy link

Mte90 commented Sep 2, 2024

I think that stripe is perfect as it is the best one around.
I saw saaspegasus but is a payment option so I can't download it and do some tests for what I am trying to build.

@Tobi-De
Copy link
Collaborator Author

Tobi-De commented Sep 2, 2024

I think that stripe is perfect as it is the best one around. I saw saaspegasus but is a payment option so I can't download it and do some tests for what I am trying to build.

Got it! I'll keep this thread updated. I've got a lot on my plate right now, but I'll tackle it as soon as I have some free time. In terms of priorities, I think the payment system is the most important extra to focus on.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants