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.9-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 83d8bb43e7ea3c604cb583c3f2de3959d2450ab644b6cb281c1347c3c0685340 |
|
MD5 | b75205f78ff0fd61979b266ce236b04e |
|
BLAKE2b-256 | 6336e445f8bbbf721d4195b298e537b371429d9c3f5f22fa3968b59284538cc2 |