@ -1,19 +0,0 @@
|
|||||||
Copyright © 2021 Garrett Mills
|
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a
|
|
||||||
copy of this software and associated documentation files (the “Software”),
|
|
||||||
to deal in the Software without restriction, including without limitation
|
|
||||||
the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
|
||||||
and/or sell copies of the Software, and to permit persons to whom the
|
|
||||||
Software is furnished to do so, subject to the following conditions:
|
|
||||||
|
|
||||||
The above copyright notice and this permission notice shall be included
|
|
||||||
in all copies or substantial portions of the Software.
|
|
||||||
|
|
||||||
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
|
||||||
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
|
||||||
THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
||||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
||||||
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
|
||||||
DEALINGS IN THE SOFTWARE.
|
|
@ -1,31 +1,9 @@
|
|||||||
<center>
|
# `garrettmills.dev`
|
||||||
<br>
|
|
||||||
<img alt="The Extollo logo" src="https://static.garrettmills.dev/sites/extollo/docs/assets/logo/svg/Extollo-Icon-and-Text-LIGHT-Final.svg" height="150">
|
|
||||||
<br><br>
|
|
||||||
<b>extollo</b> - (v. <em>latin</em>) - to lift up, to elevate
|
|
||||||
<br><br>
|
|
||||||
Extollo is a <a href="https://www.gnu.org/philosophy/floss-and-foss.en.html" target="_blank">free & libre</a> application framework in TypeScript.
|
|
||||||
</center>
|
|
||||||
<hr>
|
|
||||||
|
|
||||||
Built on principles of modularity, strict-typing, inversion-of-control, and developer ergonomics, Extollo enables developers to build maintainable, scalable, and expressive applications.
|
This is my website, hosted at https://garrettmills.dev.
|
||||||
|
|
||||||
Node.js provides an excellent platform for quickly getting an application up and running, but this loose minimalism can lead to larger, more unweildy code-bases as your application grows. Extollo fixes this by providing an opinionated, robust framework and first-party modules that provide, among other things:
|
It is implemented with my [Extollo framework](https://extollo.garrettmills.dev).
|
||||||
|
|
||||||
- Type-based dependency injection
|
![](https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png)
|
||||||
- Strongly-typed ORM with an expressive query-builder and models
|
|
||||||
- Customizable session & caching interfaces
|
|
||||||
- Modular, pre-compiled, nest-able routes
|
|
||||||
- First-party, extensible command line tools
|
|
||||||
- Unit-based application structure
|
|
||||||
|
|
||||||
## Getting Started
|
This work is licensed under a [Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License](https://creativecommons.org/licenses/by-nc-sa/4.0/).
|
||||||
Writing an application with Extollo is very straightforward if you are familiar with Node.js/TypeScript, or similar frameworks like Laravel.
|
|
||||||
|
|
||||||
Check out the [Getting Started](https://extollo.garrettmills.dev/pages/Documentation/Getting-Started.html) page on the documentation site for more information.
|
|
||||||
|
|
||||||
## License & Philosophy
|
|
||||||
The Extollo project is, and will always be, free & libre software. The framework itself is open-source available [here](https://code.garrettmills.dev/Extollo), and is licensed under the terms of the MIT license. See the LICENSE file for more information.
|
|
||||||
|
|
||||||
## Contributing
|
|
||||||
Have an improvement or fix to Extollo? Contributors are always welcome. See the CONTRIBUTING.md file for next steps.
|
|
||||||
|
@ -1,4 +0,0 @@
|
|||||||
DEBUG_MODE=true
|
|
||||||
EXTOLLO_LOGGING_LEVEL=6
|
|
||||||
DATABASE_PASSWORD=extollo
|
|
||||||
DATABASE_HOST=db01.platform.local
|
|
@ -1,15 +0,0 @@
|
|||||||
import {Inject, Injectable, Logging, BaseJob} from '@extollo/lib'
|
|
||||||
|
|
||||||
@Injectable()
|
|
||||||
export default class LogMessage extends BaseJob {
|
|
||||||
@Inject()
|
|
||||||
protected readonly logging!: Logging
|
|
||||||
|
|
||||||
async execute(): Promise<void> {
|
|
||||||
this.logging.info('Executing LogMessage...')
|
|
||||||
await new Promise<void>(res => {
|
|
||||||
setTimeout(() => res(), 3000)
|
|
||||||
})
|
|
||||||
this.logging.success('The LogMessage job has executed!')
|
|
||||||
}
|
|
||||||
}
|
|
After Width: | Height: | Size: 467 B |
After Width: | Height: | Size: 1.6 KiB |
After Width: | Height: | Size: 4.9 KiB |
After Width: | Height: | Size: 21 KiB |
After Width: | Height: | Size: 4.5 KiB |
After Width: | Height: | Size: 327 B |
After Width: | Height: | Size: 628 B |
After Width: | Height: | Size: 15 KiB |
@ -0,0 +1 @@
|
|||||||
|
{"name":"Garrett Mills | Developer, Speaker, Designer","short_name":"Garrett Mills","icons":[{"src":"/android-chrome-192x192.png","sizes":"192x192","type":"image/png"},{"src":"/android-chrome-512x512.png","sizes":"512x512","type":"image/png"}],"theme_color":"#ffffff","background_color":"#ffffff","display":"standalone"}
|
After Width: | Height: | Size: 6.8 KiB |
@ -1,14 +0,0 @@
|
|||||||
|
|
||||||
export interface UserLogin {
|
|
||||||
/**
|
|
||||||
* @minLength 1
|
|
||||||
* @maxLength 100
|
|
||||||
*/
|
|
||||||
username: string,
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @minLength 1
|
|
||||||
* @maxLength 100
|
|
||||||
*/
|
|
||||||
password: string,
|
|
||||||
}
|
|