No project description provided
Project description
🚀 AWS Serverless Development All In Python 🐍
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
1) Infrastructure is simplified and part of your code
😎 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()
2) Deploy without installing and managing Node, Aws Cli & CDK versions
-
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
3) Live Development- Interact with your microservice as you code
- 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.
$ 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
fluxional-0.1.2.tar.gz
(31.6 kB
view hashes)
Built Distribution
fluxional-0.1.2-py3-none-any.whl
(39.1 kB
view hashes)
Close
Hashes for fluxional-0.1.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 688edf424db7f26237d913b6c2c518d0e2579024de6016c2db86e6aee5a7f92f |
|
MD5 | f0be257c9965be95ef22db59a71fe18d |
|
BLAKE2b-256 | f1ab4349f92c9572f96223e3afdf1cee4fab2d473cc6f5fcd12902363fefd71f |