elmo v2.1.6
Elmo
Elmo is the web framework I've been using to create websites for the last 2 years. I'm currently porting the framework over from a private repository and adding tests and some functionality as I go.
You can learn more about the project here: https://elmo-www.netlify.com/.
I'm open sourcing this earlier than normal to hopefully get some feedback from you earlier on. The structure is in place and the pieces that do exist are well-tested. The CLI is not yet functional.
Right now there's not a lot of documentation, but the tests should give a good sense of what each of the parts do. The goal of this project is break apart the framework into digestible, self-contained bits. You'll see from the tests that each test is fairly self-contained from the rest of the framework. This makes it easier to test and should make the system easier to understand.
The source is separated into browser/
modules, nodejs/
modules and internal/
modules which may target either browser or node.js. Anything public should be aliased by either browser/
or nodejs/
depending on the target. The tests all end with _test.js
. Most files have a test.
Roadmap to being usable
- Finish
elmo bundle
- Finish
elmo serve
- Finish
elmo new
- Finish
elmo build
- Add
<Style />
component - Add
<Link />
component - Add
<Context />
component - Add fetch
- Add Promise polyfill
- Cleanup misc files and package.json
- Write the prepublish script
Once this is complete, I'll start publishing to elmo
.
1.0
- Add linkstate and dlv
- Cross-browser integration testing with Saucelabs
- CI testing
- Migrate from rollup to Webpack for testing
- Extract essentials from styled-jsx
Developing
I spent a lot of time trying to make it easy to develop and test Elmo. Each test builds the source code it needs to run the test use mocha
without any additional build steps. There are also steps to test browser code via puppeteer. You can find the various test utilities in src/testutil
Here's how to download and run all the tests:
git clone github.com/matthewmueller/elmo
yarn # or npm install
./node_modules/.bin/mocha './src/**/*_test.js'
License
MIT
5 years ago
5 years ago
5 years ago
5 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
8 years ago