Initial scaffold

This commit is contained in:
George Dietrich 2020-12-21 23:26:28 -05:00
parent 34c8539ead
commit 34aeeb58c0
7 changed files with 23 additions and 47 deletions

View file

@ -1,6 +1,6 @@
The MIT License (MIT) The MIT License (MIT)
Copyright (c) 2020 CREATOR_NAME Copyright (c) 2020 George Dietrich
Permission is hereby granted, free of charge, to any person obtaining a copy Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal of this software and associated documentation files (the "Software"), to deal

View file

@ -1,33 +1,9 @@
# README # Negotiation
Template repo for creating a new Athena component. Scaffolds the Crystal shard's structure as well as define CI etc. [![CI](https://github.com/athena-framework/negotiation/workflows/CI/badge.svg)](https://github.com/athena-framework/negotiation/actions?query=workflow%3ACI)
[![Latest release](https://img.shields.io/github/release/athena-framework/negotiation.svg)](https://github.com/athena-framework/negotiation/releases)
**NOTE:** This repo assumes the component will be in the `athena-framework` org. If it is to be used outside of the org, be sure to update URLs accordingly. Framework agnostic content negotiation library.
1. Find/replace `COMPONENT_NAME` with the name of the component. This is used as the shard's name. E.x. `logger`.
1.1 Be sure to rename the file in `./src`, and `./spec` as well.
1. Replace `NAMESPACE_NAME` with the name of the component's namespace. Documentation for this component will be grouped under this. E.x. `Logger`.
1. Find/replace `CREATOR_NAME` with your Github display name. E.x. `George Dietrich`.
1. Find/replace `CREATOR_USERNAME` with your Github username. E.x. `blacksmoke16`.
1. Find/replace `CREATOR_EMAIL` with your desired email
5.1 Can remove this if you don't wish to expose an email.
1. Find/replace `ALIAS_NAME` with the three letter alias for this component; A + 2 letter shortcut to `NAMESPACE_NAME`. E.x. `ALG`.
1. Find/replace `DESCRIPTION` with a short description of what the component does.
Delete from here up
# NAMESPACE_NAME
[![CI](https://github.com/athena-framework/COMPONENT_NAME/workflows/CI/badge.svg)](https://github.com/athena-framework/COMPONENT_NAME/actions?query=workflow%3ACI)
[![Latest release](https://img.shields.io/github/release/athena-framework/COMPONENT_NAME.svg)](https://github.com/athena-framework/COMPONENT_NAME/releases)
DESCRIPTION
## Installation ## Installation
@ -35,8 +11,8 @@ DESCRIPTION
```yaml ```yaml
dependencies: dependencies:
athena-COMPONENT_NAME: athena-negotiation:
github: athena-framework/COMPONENT_NAME github: athena-framework/negotiation
version: ~> 1.0.0 version: ~> 1.0.0
``` ```
@ -44,11 +20,11 @@ dependencies:
## Documentation ## Documentation
Everything is documented in the [API Docs](https://athena-framework.github.io/COMPONENT_NAME/Athena/NAMESPACE_NAME.html). Everything is documented in the [API Docs](https://athena-framework.github.io/negotiation/Athena/Negotiation.html).
## Contributing ## Contributing
1. Fork it (https://github.com/athena-framework/COMPONENT_NAME/fork) 1. Fork it (https://github.com/athena-framework/negotiation/fork)
2. Create your feature branch (`git checkout -b my-new-feature`) 2. Create your feature branch (`git checkout -b my-new-feature`)
3. Commit your changes (`git commit -am 'Add some feature'`) 3. Commit your changes (`git commit -am 'Add some feature'`)
4. Push to the branch (`git push origin my-new-feature`) 4. Push to the branch (`git push origin my-new-feature`)
@ -56,4 +32,4 @@ Everything is documented in the [API Docs](https://athena-framework.github.io/CO
## Contributors ## Contributors
- [CREATOR_NAME](https://github.com/CREATOR_USERNAME) - creator and maintainer - [George Dietrich](https://github.com/blacksmoke16) - creator and maintainer

View file

@ -1,4 +1,4 @@
name: athena-COMPONENT_NAME name: athena-negotiation
version: 0.1.0 version: 0.1.0
@ -6,15 +6,15 @@ crystal: '>= 0.35.0'
license: MIT license: MIT
repository: https://github.com/athena-framework/COMPONENT_NAME repository: https://github.com/athena-framework/negotiation
documentation: https://athena-framework.github.io/COMPONENT_NAME/Athena/NAMESPACE_NAME.html documentation: https://athena-framework.github.io/negotiation/Athena/Negotiation.html
description: | description: |
DESCRIPTION. Framework agnostic content negotiation library.
authors: authors:
- CREATOR_NAME <CREATOR_EMAIL> - George Dietrich <george@dietrich.app>
development_dependencies: development_dependencies:
ameba: ameba:

View file

@ -1,6 +1,6 @@
require "./spec_helper" require "./spec_helper"
describe Athena::NAMESPACE_NAME do describe Athena::Negotiation do
it "works" do it "works" do
false.should eq(true) false.should eq(true)
end end

View file

@ -1,2 +1,2 @@
require "spec" require "spec"
require "../src/athena-COMPONENT_NAME" require "../src/athena-negotiation"

View file

@ -1,6 +0,0 @@
# Convenience alias to make referencing `Athena::NAMESPACE_NAME` types easier.
alias ALIAS_NAME = Athena::NAMESPACE_NAME
module Athena::NAMESPACE_NAME
VERSION = "0.1.0"
end

View file

@ -0,0 +1,6 @@
# Convenience alias to make referencing `Athena::Negotiation` types easier.
alias ANG = Athena::Negotiation
module Athena::Negotiation
VERSION = "0.1.0"
end