Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: Initial common docs #3

Open
wants to merge 16 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 12 additions & 12 deletions .github/contributing.md
Original file line number Diff line number Diff line change
@@ -1,32 +1,32 @@
# Contributing to Feathers
# Contributing to Wings

Thank you for contributing to Feathers! :heart: :tada:
Thank you for contributing to Wings! :heart: :tada:

Feathers embraces modularity and is broken up across multiple modules. You can find them all in the `packages/` folder. Most reflect their name on npm. For example, the code for `@feathersjs/feathers` will be in `packages/feathers`, for `@feathersjs/authentication` in `packages/authenticaiton`.
Wings embraces modularity and is broken up across multiple modules. You can find them all in the `packages/` folder. Most reflect their name on npm. For example, the code for `@wings/memory` will be in `packages/memory`, for `@wings/kysely` in `packages/kysely`.

## Report a bug

Before creating an issue please make sure you have checked out the docs, specifically the [FAQ](https://docs.feathersjs.com/help/faq.html) section. You might want to also try searching Github. It's pretty likely someone has already asked a similar question.
Before creating an issue please make sure you have checked out the docs at <https://wings.codes>. You might want to also try searching Github. It's pretty likely someone has already asked a similar question. You can also try searching for answers related to FeatherJS, since Wings' database adapters were originally included in FeathersJS.

If you haven't found your answer please feel free to join our [Discord server](https://discord.gg/qa8kez8QBx), create an issue on Github, or post on [Stackoverflow](http://stackoverflow.com) using the `feathersjs` tag. We try our best to monitor Stackoverflow but you're likely to get more immediate responses in Discord and Github.

Issues can be reported in the [issue tracker](https://github.com/feathersjs/feathers/issues). Since feathers combines many modules it can be hard for us to assess the root cause without knowing which modules are being used and what your configuration looks like, so **it helps us immensely if you can link to a simple example that reproduces your issue**.
Issues can be reported in the [issue tracker](https://github.com/wingshq/wings/issues). Since Wings supports many modules it can be hard for us to assess the root cause without knowing which modules are being used and what your configuration looks like, so **it helps us immensely if you can link to a simple example that reproduces your issue**.

## Report a Security Concern

We take security very seriously at Feathers. We welcome any peer review of our 100% open source code to ensure nobody's Feathers app is ever compromised or hacked. As a web application developer you are responsible for any security breaches. We do our very best to make sure Feathers is as secure as possible by default.
We take security very seriously at Wings. We welcome any peer review of our 100% open source code to ensure nobody's Wings app is ever compromised or hacked. As a web application developer you are responsible for any security breaches. We do our very best to make sure Wings is as secure as possible, by default.

In order to give the community time to respond and upgrade we strongly urge you report all security issues to us. Send one of the core team members a PM in [Discord](https://discord.gg/qa8kez8QBx) or email us at <a href="mailto:">[email protected]</a> with details and we will respond ASAP.

For full details refer to our [Security docs](https://docs.feathersjs.com/SECURITY.html).
For full details refer to our [Security docs](https://wings.codes/SECURITY.html).

## Pull Requests

We :heart: pull requests and we're continually working to make it as easy as possible for people to contribute.

We prefer small pull requests with minimal code changes. The smaller they are the easier they are to review and merge. A FeathersJS maintainer will pick up your PR and review it as soon as they can. They may ask for changes or reject your pull request. This is not a reflection of you as an engineer or a person. Please accept feedback graciously as we will also try to be sensitive when providing it.
We prefer small pull requests with minimal code changes. The smaller they are the easier they are to review and merge. A Wings maintainer will pick up your PR and review it as soon as they can. They may ask for changes or reject your pull request. This is not a reflection of you as an engineer or a person. Please accept feedback graciously as we will also try to be sensitive when providing it.

Although we generally accept many PRs they can be rejected for many reasons. We will be as transparent as possible but it may simply be that you do not have the same context, historical knowledge or information regarding the roadmap that the maintainers have. We value the time you take to put together any contributions so we pledge to always be respectful of that time and will try to be as open as possible so that you don't waste it. :smile:
Although we generally accept many PRs, they can be rejected for many reasons. We will be as transparent as possible but it may simply be that you do not have the same context, historical knowledge or information regarding the roadmap that the maintainers have. We value the time you take to put together any contributions so we pledge to always be respectful of that time and will try to be as open as possible so that you don't waste it. :smile:

**All PRs (except documentation) should be accompanied with tests and pass the linting rules.**

Expand All @@ -40,13 +40,13 @@ Before running the tests from the `test/` folder `npm test` will run ESlint. You

### Documentation

Feathers documentation is contained in Markdown files in the [docs folder](https://github.com/feathersjs/feathers) of the main repository. To change the documentation submit a pull request to that repo, referencing any other PR if applicable, and the docs will be updated as soon as it is merged.
Wings documentation is contained in Markdown files in the [docs folder](https://github.com/wingshq/wings) of the main repository. To change the documentation submit a pull request to that repo, referencing any other PR if applicable, and the docs will be updated as soon as it is merged.

## Community Contributions

If you've written something awesome about Feathers, for the Feathers ecosystem, or created an app using Feathers please add it to the [awesome-feathersjs](https://github.com/feathersjs-ecosystem/awesome-feathersjs).
If you've written something awesome about Wings, for the Wings ecosystem, or created an app using Wings please add it to the [awesome-wings](https://github.com/wingshq/awesome-wings).

If you think your module would be a good core `feathersjs` module or [featherjs-ecosystem](https://github.com/feathersjs-ecosystem) module then please contact one of the Feathers maintainers on [Discord](https://discord.gg/qa8kez8QBx) and we can discuss whether it belongs and how to get it there. :beers:
If you think your module would be a good core `wings` module or [wings-ecosystem](https://github.com/wingshq) module then please contact one of the Wings maintainers on [Discord](https://discord.gg/qa8kez8QBx) and we can discuss whether it belongs and how to get it there. :beers:

## Contributor Code of Conduct

Expand Down
2 changes: 1 addition & 1 deletion .github/issue_template.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
### Steps to reproduce

(First please check that this issue is not already solved as [described
here](https://github.com/feathersjs/feathers/blob/dove/.github/contributing.md#report-a-bug) - if it is a general question or suggestion please start a [Discussion](https://github.com/feathersjs/feathers/discussions))
here](https://github.com/wingshq/wings/blob/main/.github/contributing.md#report-a-bug) - if it is a general question or suggestion please start a [Discussion](https://github.com/wingshq/wings/discussions))

- [ ] Tell us what broke. The more detailed the better.
- [ ] If you can, please create a simple example that reproduces the issue and link to a gist, jrepo, etc. This makes it much easier for us to debug and issues that have a reproducible example will get higher priority.
Expand Down
2 changes: 1 addition & 1 deletion .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
### Summary

(If you have not already please refer to the contributing guideline as [described
here](https://github.com/feathersjs/feathers/blob/dove/.github/contributing.md#pull-requests))
here](https://github.com/wingshq/wings/blob/main/.github/contributing.md#pull-requests))

- [ ] Tell us about the problem your pull request is solving.
- [ ] Are there any open issues that are related to this?
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/nodejs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ jobs:
postgres:
image: postgres:latest
env:
POSTGRES_DB: feathers
POSTGRES_DB: wings
POSTGRES_PASSWORD: postgres
POSTGRES_PORT: 5432
POSTGRES_USER: postgres
Expand Down
5 changes: 2 additions & 3 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
The MIT License (MIT)
# The MIT License (MIT)

Copyright (c) 2023 Feathers Contributors
Copyright (c) 2023 Feathers and WingsHQ Contributors

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand All @@ -19,4 +19,3 @@ 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.

12 changes: 6 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,16 @@

---

[![CI](https://github.com/feathersjs/feathers/workflows/CI/badge.svg)](https://github.com/feathersjs/feathers/actions?query=workflow%3ACI)
[![Maintainability](https://api.codeclimate.com/v1/badges/cb5ec42a2d0cc1a47a02/maintainability)](https://codeclimate.com/github/feathersjs/feathers/maintainability)
[![Test Coverage](https://api.codeclimate.com/v1/badges/cb5ec42a2d0cc1a47a02/test_coverage)](https://codeclimate.com/github/feathersjs/feathers/test_coverage)
[![Download Status](https://img.shields.io/npm/dm/@feathersjs/feathers.svg?style=flat-square)](https://www.npmjs.com/package/@feathersjs/feathers)
[![CI](https://github.com/wingshq/wings/workflows/CI/badge.svg)](https://github.com/wingshq/wings/actions?query=workflow%3ACI)
[![Maintainability](https://api.codeclimate.com/v1/badges/cb5ec42a2d0cc1a47a02/maintainability)](https://codeclimate.com/github/wingshq/wings/maintainability)
[![Test Coverage](https://api.codeclimate.com/v1/badges/cb5ec42a2d0cc1a47a02/test_coverage)](https://codeclimate.com/github/wingshq/wings/test_coverage)
[![Download Status](https://img.shields.io/npm/dm/@wingshq/wings.svg?style=flat-square)](https://www.npmjs.com/package/@wingshq/wings)
[![Discord](https://badgen.net/badge/icon/discord?icon=discord&label)](https://discord.gg/qa8kez8QBx)

Wings allows integrating different databases through a unified interface into any TypeScript or JavaScript application.

# License
## License

Copyright (c) 2023 [Feathers contributors](https://github.com/feathersjs/feathers/graphs/contributors)
Copyright (c) 2023 [Wings contributors](https://github.com/wingshq/wings/graphs/contributors)

Licensed under the [MIT license](LICENSE).
4 changes: 4 additions & 0 deletions docs/.markdownlint.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"MD013": false,
"MD033": false
}
15 changes: 15 additions & 0 deletions docs/.vitepress/components.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
/* eslint-disable */
/* prettier-ignore */
// @ts-nocheck
// Generated by unplugin-vue-components
// Read more: https://github.com/vuejs/core/pull/3399
export {}

declare module 'vue' {
export interface GlobalComponents {
Badges: typeof import('./components/Badges.vue')['default']
BlockQuote: typeof import('./components/BlockQuote.vue')['default']
LanguageBlock: typeof import('./components/LanguageBlock.vue')['default']
LanguageSelect: typeof import('./components/LanguageSelect.vue')['default']
}
}
35 changes: 35 additions & 0 deletions docs/.vitepress/components/Badges.vue
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
<script setup lang="ts">
import { computed } from 'vue'
// A style wrapper to make npm badges do flex-row.
const props = defineProps<{
packageName?: string
}>()

const shortName = computed(() => {
if (!props.packageName) return ''
const parts = props.packageName.split('/')
return parts[parts.length - 1]
})
</script>

<template>
<div class="flex flex-row items-center gap-1 pt-2">
<a :href="`https://www.npmjs.com/package/${packageName}`">
<img :src="`https://img.shields.io/npm/v/${packageName}.svg?style=flat-square`" alt="npm version">
</a>
<a :href="`https://github.com/wingshq/wings/blob/main/packages/${shortName}/CHANGELOG.md`">
<img :src="`https://img.shields.io/badge/changelog-.md-blue.svg?style=flat-square`" alt="Changelog">
</a>
</div>
</template>

<style lang="postcss">
/* For npm and changelog badges */
.badges p {
@apply flex flex-row;
}

.badges img {
margin-right: .5em
}
</style>
24 changes: 24 additions & 0 deletions docs/.vitepress/components/BlockQuote.vue
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
<script setup lang="ts">
import { computed } from 'vue'

const props = defineProps({
// Can be tip, info, warning, danger, or details
type: { type: String, default: 'tip' },
label: { type: String },
})
const outerTag = computed(() => (props.type === 'details' ? 'details' : 'div'))
const labelTag = computed(() => (props.type === 'details' ? 'summary' : 'p'))
</script>

<template>
<component :is="outerTag" class="custom-block" :class="type">
<component
:is="labelTag"
class="custom-block-title"
:class="type === 'details' ? 'capitalize' : 'uppercase'"
>
{{ label || type }}
</component>
<slot />
</component>
</template>
16 changes: 16 additions & 0 deletions docs/.vitepress/components/LanguageBlock.vue
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
<script setup lang="ts">
import { useGlobalLanguage } from '../theme/store'

defineProps({
globalId: String,
inline: String
})

const activeGlobalId = useGlobalLanguage()
</script>

<template>
<component :is="inline ? 'span' : 'div'" :class="{ hidden: globalId !== activeGlobalId }">
<slot />
</component>
</template>
24 changes: 24 additions & 0 deletions docs/.vitepress/components/LanguageSelect.vue
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
<script setup lang="ts">
import { useGlobalLanguage } from '../theme/store'
import Select from './Select.vue'

const activeGlobalLanguage = useGlobalLanguage()

const handleGlobalLanguageUpdate = (val: string) => {
activeGlobalLanguage.value = val
document.body.setAttribute('data-language', val)
}
</script>

<template>
<Select
id="GlobalLanguageSelect"
:value="activeGlobalLanguage"
label="Code Language"
:options="[
{ value: 'ts', text: 'TypeScript' },
{ value: 'js', text: 'JavaScript' }
]"
@update-value="handleGlobalLanguageUpdate"
/>
</template>
4 changes: 4 additions & 0 deletions docs/.vitepress/config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,10 @@ export default defineConfig({
{ text: 'Frameworks', link: '/frameworks/' },
],

search: {
provider: 'local',
},

sidebar: {
'/adapters/': adaptersSidebar,
'/databases/': databasesSidebar,
Expand Down
19 changes: 13 additions & 6 deletions docs/.vitepress/sidebar.adapters.ts
Original file line number Diff line number Diff line change
@@ -1,21 +1,28 @@
export const adaptersSidebar = [
{ text: 'Adapters Overview', link: '/adapters/' },
{ text: 'Database Adapter Consulting', link: '/adapters/consulting' },
{
text: 'Common API',
items: [
{ text: 'Adapter Classes', link: '/adapters/common-api' },
{ text: 'Query Syntax', link: '/adapters/common-query-syntax' },
]
},
{
text: 'Database Adapters',
items: [
{ text: 'Sequelize', link: '/adapters/sequelize' },
{ text: 'Cassandra', link: '/adapters/cassandra' },
{ text: 'Elastic Search', link: '/adapters/elastic-search' },
{ text: 'Knex', link: '/adapters/knex' },
{ text: 'Kysely', link: '/adapters/kysely' },
{ text: 'Cassandra', link: '/adapters/cassandra' },
{ text: 'Memory', link: '/adapters/memory' },
{ text: 'Elastic Search', link: '/adapters/elastic-search' },
{ text: 'RethinkDB', link: '/adapters/rethinkdb' },
{ text: 'Mongoose', link: '/adapters/mongoose' },
{ text: 'MongoDB', link: '/adapters/mongodb' },
{ text: 'NeDB', link: '/adapters/nedb' },
{ text: 'Objection', link: '/adapters/objection' },
{ text: 'Prisma', link: '/adapters/prisma' },
{ text: 'Mongoose', link: '/adapters/mongoose' },
{ text: 'MongoDB', link: '/adapters/mongodb' },
{ text: 'RethinkDB', link: '/adapters/rethinkdb' },
{ text: 'Sequelize', link: '/adapters/sequelize' }
],
},
{
Expand Down
1 change: 1 addition & 0 deletions docs/.vitepress/theme/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
import { h } from 'vue'
import Theme from 'vitepress/theme'
import './style.css'
import './tailwind.postcss'

export default {
...Theme,
Expand Down
3 changes: 3 additions & 0 deletions docs/.vitepress/theme/tailwind.postcss
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
@tailwind base;
@tailwind components;
@tailwind utilities;
Loading