https://github.com/amilajack/alfred
A Modular Toolchain for JavaScript
https://github.com/amilajack/alfred
js modular toolchain
Last synced: about 1 year ago
JSON representation
A Modular Toolchain for JavaScript
- Host: GitHub
- URL: https://github.com/amilajack/alfred
- Owner: amilajack
- License: mit
- Created: 2017-09-28T17:53:38.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2021-01-24T00:17:32.000Z (over 5 years ago)
- Last Synced: 2025-03-28T07:22:23.187Z (about 1 year ago)
- Topics: js, modular, toolchain
- Language: TypeScript
- Homepage: https://alfred.js.org
- Size: 11.2 MB
- Stars: 41
- Watchers: 2
- Forks: 1
- Open Issues: 42
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
Alfred
======

[](https://spectrum.chat/alfred)
[](https://twitter.com/alfredpkg)

> ## 🛠 Status: In Development
> Alfred is currently in development. It's on the fast track to a 1.0 release, so we encourage you to use it and give us your feedback, but there are things that haven't been finalized yet and you can expect some changes.
## What is Alfred?
- An alternative to boilerplates / starter kits
- Better tooling, out of the box
- A solution to brittle and complex JS infrastructure
## Getting Started
```bash
# Create a new project
npx alfred new my-project
cd my-project
# Build your project
npx alfred run build
```
## Docs
- **[docs](https://alfred.js.org/docs/getting-started)**
- **[website](https://alfred.js.org)**
- **[API](https://alfred.js.org/docs/api)**
## Examples
See our [examples directory](https://github.com/amilajack/alfred/tree/master/examples)
| Icon | Status |
| --- | --- |
| ✅ | Basic implementation finish |
| 🔨 | Implementation in progress |
| ❌ | To be implemented, Help wanted! |
| | Example | Descrption |
|-----|-----------------------------------------|-----------------------------------------|
| 1. | [hello world node][hello-world-example] | A simple hello world app in node |
| 2. | [react library][react-lib-example] | A small button library built with React |
| 3. | typescript react app | ❌ |
[hello-world-example]: https://github.com/amilajack/alfred/tree/master/examples/hello-world
[react-lib-example]: https://github.com/amilajack/alfred/tree/master/examples/react-lib
## Implemented Skills
| Infrastructure | Skills | Implemented |
| --- | --- | --- |
| Bundlers | Webpack, Rollup, Parcel | ✅ ✅ ✅ |
| Transpilers | Babel | ✅ |
| Test Frameworks | Jest, Mocha, Jasmine, Ava | ✅ ✅ ❌ ❌ |
| Formatters | Prettier | ✅ |
| Libraries | Lodash, Moment | ✅ ❌ |
| Linters | ESLint | ✅ |
| Front End | React, Vue, Angular | ✅ ❌ ❌ |
| State Managment | Redux, Mobx | ✅ ❌ |
| Routing | react-router | ❌ |
| Query Languages | graphql, apollo | ❌ ❌ |
| Documentation | ESDoc, Typedoc | ❌ ❌ |
| Migration | Lebab | ❌ |
| Type Checkers | Flow, TypeScript | ❌ ❌ |
| End to End Testing | TestCafe, Cypress | ❌ ❌ |
## Implemented Targets
| Target | Implemented |
| --- | --- |
| Browser | ✅ |
| Node | ✅ |
| Electron | ❌ |
| React Native | ❌ |
## Prior Art
- [Cargo](https://github.com/rust-lang/cargo)
- [NPM](https://npmjs.org), [Yarn](https://yarnpkg.com)
- [Yeoman](http://yeoman.io)
- [create-react-app](https://github.com/facebook/create-react-app)
- [react-boilerplate](https://www.github.com/react-boilerplate/react-boilerplate), [electron-react-boilerplate](https://www.github.com/electron-react-boilerplate/electron-react-boilerplate), and [many many other boilerplates](https://github.com/search?q=boilerplate)
## Inspiration
- [parcel](http://parceljs.org)
- [elm](https://elm-lang.org)
- [Cargo](https://github.com/rust-lang/cargo)
- [Yarn](https://yarnpkg.com)
- [webpack-merge](https://github.com/survivejs/webpack-merge)
## Contributing
See [CONTRIBUTING.md](./CONTRIBUTING.md)
## Donations
If this project is saving you (or your team) time, please consider supporting it on Patreon 👍 thank you!
**Donations will ensure the following:**
- 🔨 Long term maintenance of the project
- 🛣 Progress on the [roadmap](https://electron-react-boilerplate.js.org/docs/roadmap)
- 🐛 Quick responses to bug reports and help requests
Please [donate to our Patreon](https://www.patreon.com/join/2181265/checkout) or [PayPal](https://paypal.me/amilajack)
## Community
All feedback and suggestions are welcome!
- 💬 Join the community on [Spectrum](https://spectrum.chat/alfred)
- 📣 Stay up to date on new features and announcements on [@alfredpkg](https://twitter.com/alfredpkg).
## Goals
- Standardize and simplify JS infrastructure and conventions
- Encourage extensible and reusable infrastructure configuration
- Provide opinionated configuration out of the box that meets the needs of most users