MCPcopy
hub / github.com/Atri-Labs/atrilabs-engine

github.com/Atri-Labs/atrilabs-engine @v1.0.0-alpha.36 sqlite

repository ↗ · DeepWiki ↗ · release v1.0.0-alpha.36 ↗
5,880 symbols 18,145 edges 844 files 285 documented · 5%
README

banner

Open issues Good first issues Discussions

Downloads GitHub Repo stars Watch on YouTube

Website | Docs | Community Slack | YouTube | LinkedIn | Twitter


📈 Trending as the #1 TypeScript repository in GitHub! Source

🎉 Ranked as a top 10 TypeScript repository in GitHub in Nov and Dec. Source

🔥 Listed as a "Hot JS Tool" for the week of Nov 6. Source

Atri framework is a full-stack web development framework for Python developers. Tweet

  • Frontend development: Use our powerful visual builder to create frontend or write React code
  • Backend development: Write backend using our Python API that is inspired from Unity's game engine
  • Deployment support: Use our CLI to deploy at your platform of choice such as AWS, GitHub Pages, etc. or Atri cloud

Watch the 1 min introduction video to Atri framework 👇

Watch the video

If you like our project, please support us by giving us a star ⭐!

What can I build using this framework?

Atri is a general purpose framework that can be used to build everything from e-commerce websites to internal apps.

Watch the video

The static instances of the web apps created using Atri have been deployed at the below URLs:

Restaurant website | Sportswear website | Personal website | Ecommerce app | Personal blog | Data app | Custom background (ML) app

Find more examples at Atri-Apps (https://github.com/orgs/Atri-Apps/repositories).

How is Atri framework different from other web development frameworks?

  1. Atri framework is not just limited to the JavaScript world. You can use this framework with many languages such as Python, NodeJS (upcoming), etc.
  2. Atri framework comes with a suite of productivity tools such as visual editor, asset management tools, etc. that significantly reduce development time from months to hours.
  3. Using Atri framework, developers do not need to write and document REST APIs. Instead, they rely upon the object model which acts as a single source of truth. This also has other benefits as well such as reducing compliance breaches.

Thus, Atri framework is extending the definition of full-stack to include non web developers in the development and maintenance of an app.

Getting Started

pipenv install atri==0.0.78
pipenv shell
atri start

Note: Python version should be >=3.8 & <=3.10.8

  • The visual editor is available at http://localhost:4002.
  • Once you click Build and Run in your visual editor, your website will start running at http://localhost:4005/.
  • All the files for your website are being auto-generated in your local directory.
  • You can write the backend of your website at controllers/routes/<page_name>/main.py.

You can follow our video tutorial 👇 or our written guide to create your first Atri app.

Watch the video

You can then follow our video tutorials to create full-stack apps.

How to contribute?

Thanks for your interest in contributing to the Atri framework. 💖

You can contribute in any or all of the following ways:

Please refer to our contributing guidelines for details. Besides, please make sure you adhere to the code of conduct.

If you make any contribution to our project (code or no-code; check the vast list of contribution types), you will be featured in the table below 👇

Contributors 🎉

All Contributors

We are grateful to these wonderful people who contributed to Atri framework. 🙏 (emoji key):

Shyam Swaroop Shyam Swaroop 💻 📖 🚇 📆 🚧 🧑‍🏫 👀 ⚠️ 📹 Darshita Chaturvedi Darshita Chaturvedi 💻 🚇 🚧 🧑‍🏫 📆 👀 ⚠️ Aditya Kumar Singh Aditya Kumar Singh 💻 🚧 🧑‍🏫 Melvin Davis Melvin Davis 💻 Jonathan Elroy Alvares Jonathan Elroy Alvares 💻 Supratim Majumder Supratim Majumder 💻 MuminAhmadKhan MuminAhmadKhan 💻
Rishabh Baid Rishabh Baid 💻 Shivam8452 Shivam8452 💻 Nukala Suraj Nukala Suraj 💻 SURAJ PHULARA SURAJ PHULARA 💻 harishfalco harishfalco 💻 Tejaswini AVSV Tejaswini AVSV 💻 ayushi0809 ayushi0809

Extension points exported contracts — how you extend this code

PageSelectorProps (Interface)
(no doc)
packages/app-page-layer/src/PageSelector.tsx
ServerToClientEvents (Interface)
(no doc)
packages/core/src/types.tsx
ProcessEnv (Interface)
(no doc)
packages/layer-types/src/index.d.ts
BasePickerProps (Interface)
(no doc)
packages/react-component-manifests/src/manifests/DatePicker/DatePicker.tsx
CssSummaryProp (Interface)
(no doc)
packages/component-style-layer/src/components/cssSummary/CssSummary.tsx
LiveApiServerToClientEvents (Interface)
(no doc)
packages/atri-app-core/src/types.ts
ProcessEnv (Interface)
(no doc)
packages/commands-builder/src/configs/types.d.ts
ClientToServerEvents (Interface)
(no doc)
packages/core/src/types.tsx

Core symbols most depended-on inside this repo

error
called by 230
packages/commands/src/scripts/dev/public/react-dom.development.js
error
called by 230
packages/commands/src/scripts/dev-editor/public/react-dom.development.js
error
called by 230
packages/pwa-builder/public/react-dom.development.js
useCallback
called by 130
packages/commands/src/scripts/dev/public/react.development.js
useCallback
called by 98
packages/pwa-builder/public/react.development.js
forwardRef
called by 95
packages/pwa-builder/public/react.development.js
useEffect
called by 89
packages/pwa-builder/public/react.development.js
useState
called by 84
packages/pwa-builder/public/react.development.js

Shape

Function 5,704
Method 99
Interface 33
Class 24
Enum 13
Route 7

Languages

TypeScript96%
Python4%

Modules by API surface

packages/pwa-builder/public/react-dom.development.js978 symbols
packages/commands/src/scripts/dev/public/react-dom.development.js978 symbols
packages/commands/src/scripts/dev-editor/public/react-dom.development.js978 symbols
packages/pwa-builder/public/react-dom.production.min.js377 symbols
packages/commands/src/scripts/dev/public/react-dom.production.min.js377 symbols
packages/commands/src/scripts/dev-editor/public/react-dom.production.min.js377 symbols
packages/pwa-builder/public/react.development.js119 symbols
packages/commands/src/scripts/dev/public/react.development.js119 symbols
packages/commands/src/scripts/dev-editor/public/react.development.js119 symbols
python-packages/atri-core/src/atri_core/AtriStyles.py63 symbols
packages/commands/src/scripts/dev/serverMachine.ts29 symbols
python-packages/atri/src/atri/cli.py27 symbols

Dependencies from manifests, versioned

@atrilabs/action-layer1.0.0-alpha.36 · 1×
@atrilabs/app-design-forest1.0.0-alpha.36 · 1×
@atrilabs/app-design-layer1.0.0-alpha.36 · 1×
@atrilabs/app-page-layer1.0.0-alpha.36 · 1×
@atrilabs/asset-manager-layer1.0.0-alpha.36 · 1×
@atrilabs/atri-app-core1.0.0-alpha.36 · 1×
@atrilabs/base-layer1.0.0-alpha.36 · 1×
@atrilabs/canvas-breakpoint-layer1.0.0-alpha.36 · 1×
@atrilabs/commands1.0.0-alpha.36 · 1×
@atrilabs/commands-builder1.0.0-alpha.36 · 1×
@atrilabs/component-attributes-layer1.0.0-alpha.36 · 1×
@atrilabs/component-icon-manifest-schema1.0.0-alpha.36 · 1×

Datastores touched

(mongodb)Database · 1 repos
statsdbDatabase · 1 repos

For agents

$ claude mcp add atrilabs-engine \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact