Skip to main content

Highly modular web framework built for big apps on top of Flask with Django advantages

Project description


shopyo

Downloads Codecov Tests PyPI version shields.io Documentation Status CII Best Practices OpenSSF Scorecard

Featured on Weekly Python issue 436 🌟

A 45 mins talk was dedicated to it at EuroPython 🌟

Must watch: Shopyo: Your Mega Flask Machine (short vid)

E-commerce modules transferred to ShopCube

[ DOCS | DISCORD | CONTRIBUTE | TWITTER]

What?

Your next-level modular web framework. Get organisation & scalability from day 1.

Built on top of Flask, it offers most Django features, sometimes a tidbit more with far more flexibility.

Why?

Perk
🥏 No learning Does not get into the way, uses common flask-packages. You only need to know Flask.
🏗️ Architecture Never think about architecture of your app, just build & integrate extensions.
🏢 Scalable As your app grows, Shopyo caters for your codebase with powerful features.
🥢 Good practices Testing, docs etc are covered. Don't make those afterthoughts.
🔧 Ease your life We've been there. Awesome utils to ease development.
🪜 Scaffolding Don't waste time writing boilerplate code. We've got you covered.
🖍️ Theming system You need theme in your apps? We integrate a default theme system.

Features

  • ⚛️ i18n setup
  • 🔐 Login & Auth
  • 📧 Email
  • 📦 2-level modularity
  • 🪐 Designed for really BIG apps
  • 🌅 Assets management

Quick start

pip install shopyo
shopyo new blog
cd blog
shopyo initialise
flask run --debug

Note: You can also run shopyo new (without a project name) inside an existing directory to scaffold Shopyo in place.

Go to http://127.0.0.1:5000/dashboard with credentials admin@domain.com / pass.

Why Shopyo?

  • Flat Structure: No more nested proj/proj confusion.
  • Zero-Friction Assets: Use standard Flask url_for('static', filename='modules/...'). It just works in Dev and Prod.
  • Auto-Discovery: Modules are detected and registered automatically.

  • Not framework docs but docs for the project you are building.

First time contributing?

We have a 100% first-timers friendly policy. Check out the testimonials.

Thank you! One of the best onboarding experiences I've had. Learned a lot too (Ramon from Codesee.io)

Glimpse

Who uses Shopyo?

site name description
Maurilearn.com Elearning platform
Linkolearn.com Learn By links
FlaskCon.com Conference soft

Big??

Powered by apps / modules. Add as many as you like.

Apps are not enough, organise them in boxes and get the ultimate order you need.

You need a customised Django? This is the project. You need to build an ERP? This is the project.

Linux??

Hackable to the core. Even the dashboard is but a module.

Don't need our modules? Nuke them. Look boring? modify them

Reliable?

We don't maintain middlewares. We rely on battle tested batteries like:

  • flask_sqlalchemy
  • flask_login & co

Heck remove them if you don't want. Want to use Peewee? You can.

Rich Flask API

Common flask patterns are integrated, the structure is over the moon.

Common flask tasks are provided with an API: custom notifications, bulk form errors

Back office feel & Theme

All looks are 100% customisable with themes ~ Backend, bootstrap included by default.

Again blow it up & use what you want. It's possible

Transparent: Code your own web distro

Everything is clear, not hidden. You can 100% customise whatever you want.

We did not hardcode our choices. Our APIS are incremental. You can always use barebones.

Plug & Play

The modules are put by copy paste. No blueprint codes to write.

Contribute

We follow a 100% first-timers friendly policy.

👉 Get started here

👉 Join the Discord, ask questions & learn about Flask tricks during our dev talks!

📚 Docs

👉 Link: shopyo.readthedocs.io/

📞 Contact (inlcuding in case of vulns)

Support team if you are stuck

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

shopyo-4.17.2.tar.gz (5.5 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

shopyo-4.17.2-py3-none-any.whl (5.5 MB view details)

Uploaded Python 3

File details

Details for the file shopyo-4.17.2.tar.gz.

File metadata

  • Download URL: shopyo-4.17.2.tar.gz
  • Upload date:
  • Size: 5.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for shopyo-4.17.2.tar.gz
Algorithm Hash digest
SHA256 d52e7ae969a9978f43e42c94d9e507ad4dd552d90c6f9ba5deacde26404322f3
MD5 3ec728ee71ec51ff519477c82210ade7
BLAKE2b-256 09c348360d295da0f301006ce96c7112d90bd3c70e3a66877e2698fc7fd05331

See more details on using hashes here.

File details

Details for the file shopyo-4.17.2-py3-none-any.whl.

File metadata

  • Download URL: shopyo-4.17.2-py3-none-any.whl
  • Upload date:
  • Size: 5.5 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for shopyo-4.17.2-py3-none-any.whl
Algorithm Hash digest
SHA256 69b37ab2615abf7ff9e59cc1cd4d2d084729e1e1735722c267300012e5fbb3f0
MD5 417e08f9416c6b3510b5d403d301f2c2
BLAKE2b-256 bce1497c180358638b03e11d7d0663c8289a644020148fbd50ac33db56924957

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page