veselosky / bluebucket Goto Github PK
View Code? Open in Web Editor NEWManage your web site with #NoCMS
License: Apache License 2.0
Manage your web site with #NoCMS
License: Apache License 2.0
As a Blue Bucket user
I want a web form where I can enter Article information
So that I can easily post content to my web site without learning JSON.
As a Blue Bucket user
I want a tool that lets me browse the content in my bucket
So that I can easily select existing files to work on,
And create new files.
In the first release, the site organizer will be a very simple file lister. In future versions the site organizer will grow many new features to aid organizing large sites.
As a (potential) user of Blue Bucket
I want a browser-based tool that will help me set up the system in my own AWS account
So that I can get started with the system without being a techie.
Requires: #7 Lambda Updater
In this version of the application, we will keep it simple to keep it fast. You will need to have AWS credentials from your account, and feed them to the browser app for it to do its job. In a future version, we may introduce multi-tenancy with a separate and easier authentication system.
Once all is good, forward the user to the Bucket Management Form.
When an Archetype is saved to the Archetypes folder,
Then generate an HTML monograph file in the main site,
And update the Archetype Index.
Document the flow of events when the main Archetypes Index is updated.
As a Power User or Developer of Blue Bucket
I want a document that explains simply how files and tasks interact in the system
So that I have the knowledge I need to troubleshoot problems and make improvements.
Branch: docflows
Create an architecture diagram of the traditional CMS architecture in three tiers, publishing, presentation, and database in the middle, for contrast with the Blue Bucket architecture.
Because AWS S3 service does not enable CORS, the browser S3 client cannot perform certain functions unless it is served from an S3 domain name. I do not wish to introduce a domain name constraint on the Blue Bucket system. So, much of the work of installing/updating the system needs to be implemented as a Lambda function that can be invoked from the browser.
The function has two modes: update mode and query mode.
When invoked, validate the submitted JSON, compress, and store in the drafts folder.
As a Blue Bucket user
I want a way to create a Blue Bucket web site from an existing or new S3 bucket
So that I can publish web sites from the system.
Requires: #9 Lambda: Bucket Setup, #10 Lambda: List Buckets
As a Power User or Developer of Blue Bucket
I want a document that explains simply how files and tasks interact in the system
So that I have the knowledge I need to troubleshoot problems and make improvements.
Branch: docflows
Draw an architecture diagram of the Blue Bucket architecture utilizing AWS services, in contrast with the traditional CMS architecture.
The Bucket Manager needs to display a list of buckets, but the list_buckets API call may not be accessible to the JS client due to missing CORS configuration on the S3 endpoint. This Lambda function will list existing buckets, determine which are Blue Buckets, and send the complete metadata back to the client for display.
When a JSON file is saved to Drafts,
Then generate an HTML preview of that file in the same folder.
As a Blue Bucket user
I need a known distribution point for Blue Bucket code and metadata
So that I can install the system in my own Amazon account
And update my system when new versions are released.
Because we want a new user to be able to bootstrap their own Blue Bucket system needing only point-and-click web skills but no programming skills, the software build and deploy process for Blue Bucket will need to prepare appropriate packages and place them in a known location for automatic discovery by the bootstrapping code.
Each Lambda function needs to be packages in a Zip and uploaded to an S3 bucket, such that the bucket & key can be supplied to the Lambda function registration function.
Themes and admin files should also be Zipped and uploaded in separate packages, so each module can be retrieved with a single GET request rather than copying individual files.
A JSON metadata file (use npm's package.json format?) should be provided, listing the latest versions of each component, so that a single GET can be used for any client to check whether they have any out of date components.
For consistency, old versions of all components should be preserved (including the metadata file for each release) so that users can continue to install fixed versions, not just the latest version. There should also be a mechanism to retrieve the "latest" version, regardless of its number, for those creating new installations or wanting to keep up to date.
To support Bucket Manager functions that may not be available to browser JavaScript, this Lambda function will perform most of the work to optionally create, and then initialize an empty bucket as a Blue Bucket web site.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.