No project description provided
Project description
🚀 AWS Serverless Development All In Python 🐍
This is a work in progress. If you have any questions or need help, please reach out to us.
Join our discord community and give us feedback or ask questions:
Fluxional is designed to simplify the development and deployment of serverless applications on AWS with minimal configuration.
Key features:
- Simplified infrastructure syntax
- Deployment only require credentials and docker
- Live interaction with your cloud application as you code
- Focused on developer experience with intuitive syntax and editor / type support
Get started with:
pip install fluxional
😎 Rest API
from fluxional import Fluxional, ApiEvent, LambdaContext
flux = Fluxional("Backend")
@flux.api
def my_api(event: ApiEvent, context: LambdaContext):
return {"statusCode": 200, "body": "ok"}
handler = flux.handler()
📲 Websockets
from fluxional import Fluxional, WsEvent, LambdaContext, Websocket
flux = Fluxional("Backend")
@flux.websocket.on_connect
def connect(event: WsEvent, context: LambdaContext):
return {"statusCode": 200}
@flux.websocket.on("some_action")
def on_action(event: WsEvent, context: LambdaContext):
# Reply to the sender
Websocket.post_to_connection(event, "Hello World!")
handler = flux.handler()
🔐 Databases
from fluxional import Fluxional
flux = Fluxional("Backend")
flux.add_dynamodb() # 👈 This will create a dynamodb
🪣 Storage (S3)
from fluxional import Fluxional, StorageEvent, LambdaContext
flux = Fluxional("Backend")
@flux.storage.on_upload
def on_upload(event: StorageEvent, context: LambdaContext):
# Do something when a file is uploaded
handler = flux.handler()
🚶 Async Events
from fluxional import Fluxional, LambdaContext, Event
flux = Fluxional("Backend")
event = Event[str]()
@flux.event
def on_event(payload: str, context: LambdaContext):
# Do something when an event is triggered
def trigger_event():
# Trigger on_event with str payload
event.trigger("on_event", "Hello World!")
handler = flux.handler()
🕵️ Tasks
from fluxional import Fluxional, TaskEvent, LambdaContext
flux = Fluxional("Backend")
@flux.run.every(1, "days")
def task_1(event: TaskEvent, context: LambdaContext):
# Do something every day from now
handler = flux.handler()
-
Fluxional provides a containarized deployment flow. No need to install and Manage versions of Node, AWS Cli or CDK on your machine ⛔. Provide your credentials in a .env and you are good to go 😊.
-
Your AWS Lambda functions are containerized and dockerfiles are auto-generated 😎 based on the runtime, requirements and dependencies you need.
To deploy 🚀 your application:
$ fluxional deploy app.handler
$ fluxional destroy app.handler
- Invoke your microservice locally 💻 and make live changes 🕘 without the need to mock your services or re-deploy.
- Your code will be ran in a local container with the exact ✨ environment and behaviors your application will have in the cloud.
** Setting must be enabled and deployed before executing below
$ fluxional dev app.handler
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
Built Distribution
Hashes for fluxional-0.1.4-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 38395a39ae8621948349494ce80de31d796db8449f2df0d9d6ae5faf7515a4cd |
|
MD5 | d04230cfa7238b5807e1c3166a46cbbd |
|
BLAKE2b-256 | 7192250d4aabbbeeec7709ccac780042e8b73a7f1426aa67e359e380bf673579 |