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

Single FDC3 repository including documentation website built with Docusaurus #5

Merged
merged 60 commits into from
Feb 15, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
60 commits
Select commit Hold shift + click to select a range
f2b1ce3
Initial commit
rikoe Jan 15, 2019
5c8f33a
Docusaurus installation, renamed example folders to "docs" and "blog"
rikoe Jan 17, 2019
36bcb16
Modfied root README to add overview and instructions
rikoe Jan 17, 2019
5841009
Set project name and organization name for GitHub Pages publishing
rikoe Jan 17, 2019
5ee31ef
Add trailing slash to base URL
rikoe Jan 17, 2019
ab26ef6
Updated README with website URL and publishing info.
rikoe Jan 17, 2019
2d1d36c
Add GitHub task list.
rikoe Jan 17, 2019
eca9b7c
Copy FDC3 docs from other repos and tweak to unify content, link to T…
rikoe Jan 21, 2019
211e4ea
Added extra tasks to root README
rikoe Jan 21, 2019
345eaca
Add back titles as not specifying them adds page title displayed in b…
rikoe Jan 21, 2019
c14a74f
Added Travis build script for CI
rikoe Jan 21, 2019
f4a0eb2
Add buiild status to project, Travis CI build badge.
rikoe Jan 21, 2019
18bf14d
Add more steps to plan, add FINOS doc plan link, update GitHub url on…
rikoe Jan 21, 2019
1a4baf4
Small readme updates
rikoe Jan 22, 2019
86c3074
FDC3 Intro doc
Jan 22, 2019
30fd929
Merge pull request #1 from rikoe/small-readme-updates
rikoe Jan 22, 2019
fb1f30d
Merge pull request #2 from RichLinnell/Introduction-to-fdc3
rikoe Jan 22, 2019
374ec16
Add use case docs from https://github.com/FDC3/use-cases
rikoe Jan 22, 2019
78b4db8
Merge pull request #3 from rikoe/add-use-cases
rikoe Jan 22, 2019
3b993f7
Cleaned up intents, reordered front page, first pass on laymans terms
Jan 22, 2019
394d0a4
fixing typos
Jan 22, 2019
bbb952d
minor typos
Jan 22, 2019
110fce5
Merge pull request #4 from rikoe/espen
rikoe Jan 22, 2019
66ee787
first cut at why fdc3, remove docker
Jan 22, 2019
8916e3d
adding the non-docs from the WG repos
Jan 22, 2019
249b0da
Merge pull request #5 from rikoe/why-fdc3
rikoe Jan 23, 2019
baaec98
First round of documents for team review
Jan 23, 2019
c1903f3
Move files into their own folder and tidy up a little
Jan 23, 2019
088fc6b
A couple more
Jan 23, 2019
1ba65f4
Finalising API docs
Jan 23, 2019
eda3c18
link error
Jan 24, 2019
1175b2d
moved top level into src, removed lower src folders
Jan 24, 2019
212a0cc
moved examples to new top folder, updated readme
Jan 24, 2019
1e6ba69
undeleted readme from app-directory - for wg to eval
Jan 24, 2019
e67b9d3
Merge pull request #6 from rikoe/adding-wg-repos
rikoe Jan 24, 2019
8e4ea8c
Merge pull request #7 from RichLinnell/API-reference-docs
rikoe Jan 24, 2019
f171593
locked docusaurus till we have build fixed
Jan 24, 2019
45ca765
Adding files from FINOS Blueprint
Jan 24, 2019
d9e489a
Merge pull request #8 from rikoe/lock-docusarus162
RichLinnell Jan 24, 2019
e4f4564
Merge pull request #9 from rikoe/adding-finos-docs
rikoe Jan 24, 2019
571bd16
Made use cases separate top-level item
rikoe Jan 23, 2019
231c1e5
Merge pull request #10 from rikoe/move-use-cases
rikoe Jan 24, 2019
71710a1
Remove left over docker file
rikoe Jan 24, 2019
0096fc7
Clean up README.md
rikoe Jan 24, 2019
99377cc
Copyright
rikoe Jan 24, 2019
dee4cca
Add and link static OpenAPI web page generated with redoc
rikoe Jan 24, 2019
c96e7d5
Merge pull request #11 from rikoe/app-directory-api
rikoe Jan 25, 2019
9d47b17
Change location of generated appd-spec page
rikoe Jan 25, 2019
ca7082c
Upgrade docusaurus
rikoe Jan 25, 2019
3144554
Remove duplicate OpenAPI spec document
rikoe Jan 25, 2019
379473a
Consolidated API docs and added Footer links
rikoe Jan 25, 2019
1d6a613
Fix link to api-spec document
rikoe Jan 25, 2019
f912488
Merge pull request #12 from rikoe/api-docs-and-footer-links
rikoe Jan 25, 2019
080cffc
Improve links in footer, fix app directory spec link
rikoe Jan 29, 2019
8192faf
Upgrade docusaurus to v1.7.2, include yarn lock file
rikoe Jan 29, 2019
9464400
Added the 2 use cases approved on todays Use Case WG
Feb 7, 2019
27b33be
Created a quick intro, removed numbering, not in line with other docs
Feb 7, 2019
20f4ae0
Merge pull request #13 from rikoe/wg-update
rikoe Feb 7, 2019
7117caa
Merge pull request #14 from rikoe/api-doc-update
rikoe Feb 7, 2019
2177883
Small repo updates
rikoe Feb 8, 2019
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
3 changes: 3 additions & 0 deletions .github/CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Code of Conduct for FDC3

Please see the [Community Code of Conduct](https://www.finos.org/code-of-conduct).
89 changes: 89 additions & 0 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
# Contributing to FDC3
:+1: First off, thanks for taking the time to contribute! :+1:

# Contributor License Agreement (CLA)
A CLA is a document that specifies how a project is allowed to use your
contribution; they are commonly used in many open source projects.

**_All_ contributions to _all_ projects hosted by [FINOS](https://www.finos.org/)
must be made with a
[Foundation CLA](https://finosfoundation.atlassian.net/wiki/spaces/FINOS/pages/83034172/Contribute)
in place, and there are [additional legal requirements](https://finosfoundation.atlassian.net/wiki/spaces/FINOS/pages/75530375/Legal+Requirements)
that must also be met.**

As a result, PRs submitted to the FDC3 project cannot be accepted until you have a CLA in place with the Foundation.

# Contributing Issues

## Prerequisites

* [ ] Have you [searched for duplicates](https://github.com/FDC3/FDC3/issues?utf8=%E2%9C%93&q=)? A simple search for exception error messages or a summary of the unexpected behaviour should suffice.
* [ ] Are you running the latest version?
* [ ] Are you sure this is a bug or missing capability?

## Raising an Issue
* Create your issue [here](https://github.com/FDC3/FDC3/issues/new).
* New issues contain two templates in the description: bug report and enhancement request. Please pick the most appropriate for your issue, **then delete the other**.
* Please also tag the new issue with either "Bug" or "Enhancement".
* Please use [Markdown formatting](https://help.github.com/categories/writing-on-github/)
liberally to assist in readability.
* [Code fences](https://help.github.com/articles/creating-and-highlighting-code-blocks/) for exception stack traces and log entries, for example, massively improve readability.

# Contributing Pull Requests (Code & Docs)
To make review of PRs easier, please:

* Please make sure your PRs will merge cleanly - PRs that don't are unlikely to be accepted.
* For code contributions, follow the existing code layout.
* For documentation contributions, follow the general structure, language, and tone of the [existing docs](https://github.com/FDC3/FDC3/wiki).
* Keep commits small and cohesive - if you have multiple contributions, please submit them as independent commits (and ideally as independent PRs too).
* Reference issue #s if your PR has anything to do with an issue (even if it doesn't address it).
* Minimise non-functional changes (e.g. whitespace shenanigans).
* Ensure all new files include a header comment block containing the [Apache License v2.0 and your copyright information](http://www.apache.org/licenses/LICENSE-2.0#apply).
* If necessary (e.g. due to 3rd party dependency licensing requirements), update the [NOTICE file](https://github.com/FDC3/FDC3/blob/master/NOTICE) with any new attribution or other notices


## Commit and PR Messages

* **Reference issues, wiki pages, and pull requests liberally!**
* Use the present tense ("Add feature" not "Added feature")
* Use the imperative mood ("Move button left..." not "Moves button left...")
* Limit the first line to 72 characters or less
* Please start the commit message with one or more applicable emoji:

| Emoji | Raw Emoji Code | Description |
|:---:|:---:|---|
| :tada: | `:tada:` | **initial** commit |
| :construction: | `:construction:` | **WIP** (Work In Progress) commits |
| :ambulance: | `:ambulance:` | when fixing a **bug** |
| :bug: | `:bug:` | when **identifying a bug**, via an inline comment (please use the `@FIXME` tag in the comment) |
| :new: | `:new:` | when introducing **new** features |
| :art: | `:art:` | when improving the **format** / structure of the code |
| :pencil: | `:pencil:` | when **performing minor changes / fixing** the code or language |
| :ballot_box_with_check: | `:ballot_box_with_check:` | when completing a task |
| :arrow_up: | `:arrow_up:` | when upgrading **dependencies** |
| :arrow_down: | `:arrow_down:` | when downgrading **dependencies** |
| :racehorse: | `:racehorse:` | when improving **performance** |
| :fire: | `:fire:` | when **removing code** or files |
| :speaker: | `:speaker:` | when adding **logging** |
| :mute: | `:mute:` | when reducing **logging** |
| :books: | `:books:` | when writing **docs** |
| :bookmark: | `:bookmark:` | when adding a **tag** |
| :gem: | `:gem:` | new **release** |
| :zap: | `:zap:` | when introducing **backward incompatible** changes or **removing functionality** |
| :bulb: | `:bulb:` | new **idea** identified in the code, via an inline comment (please use the `@IDEA` tag in the comment) |
| :snowflake: | `:snowflake:` | changing **configuration** |
| :lipstick: | `:lipstick:` | when improving **UI** / cosmetic |
| :umbrella: | `:umbrella:` | when adding **tests** |
| :green_heart: | `:green_heart:` | when fixing the **CI** build |
| :lock: | `:lock:` | when dealing with **security** |
| :shirt: | `:shirt:` | when removing **linter** / strict / deprecation / reflection warnings |
| :fast_forward: | `:fast_forward:` | when **forward-porting features** from an older version/branch |
| :rewind: | `:rewind:` | when **backporting features** from a newer version/branch |
| :wheelchair: | `:wheelchair:` | when improving **accessibility** |
| :globe_with_meridians: | `:globe_with_meridians:` | when dealing with **globalisation** / internationalisation |
| :rocket: | `:rocket:` | anything related to deployments / **DevOps** |
| :non-potable_water: | `:non-potable_water:` | when plugging memory leaks
| :penguin: | `:penguin:` | when fixing something on **Linux** |
| :apple: | `:apple:` | when fixing something on **Mac OS** |
| :checkered_flag: | `:checkered_flag:` | when fixing something on **Windows** |
| :handbag: | `:handbag:` | when a commit contains multiple unrelated changes that don't fit into any one category (but please try not to do this!) |
24 changes: 24 additions & 0 deletions .github/ISSUE_TEMPLATE/Bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
---
name: 🐛 Bug Report
about: If something isn't working as expected 🤔.

---

## Bug Report

### Steps to Reproduce:
1. ...step 1 description...
2. ...step 2 description...
3. ...step 3 description...

### Expected Result:
...description of what you expected to see...

### Actual Result:
...what actually happened, including full exceptions (please include the entire stack trace, including "caused by" entries), log entries, screen shots etc. where appropriate...

### Environment:
...version and build of the project, OS and runtime versions, virtualised environment (if any), etc. ...

### Additional Context:
...add any other context about the problem here. If applicable, add screenshots to help explain...
17 changes: 17 additions & 0 deletions .github/ISSUE_TEMPLATE/Feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
---
name: 🚀 Feature Request
about: I have a suggestion (and may want to implement it 🙂)!

---

## Feature Request

### Description of Problem:
...what *problem* are you trying to solve that the project doesn't currently solve?

...please resist the temptation to describe your request in terms of a solution. Job Story form ("When [triggering condition], I want to [motivation/goal], so I can [outcome].") can help ensure you're expressing a problem statement.

### Potential Solutions:
...clearly and concisely describe what you want to happen. Add any considered drawbacks.

... if you've considered alternatives, clearly and concisely describe those too.
11 changes: 11 additions & 0 deletions .github/ISSUE_TEMPLATE/Support_question.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
---
name: 🤗 Support Question
about: If you have a question about configuration, usage, etc. 💬

---

## Support Question

...ask your question here.

...be sure to search existing issues since someone might have already asked something similar.
12 changes: 12 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
.DS_Store

node_modules

lib/core/metadata.js
lib/core/MetadataBlog.js

website/translated_docs
website/build/
website/node_modules
website/i18n/*
website/package-lock.json
14 changes: 14 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# .travis.yml
language: node_js
node_js:
- '8'
branches:
only:
- master
cache:
yarn: true
script:
- git config --global user.name "${GH_NAME}"
- git config --global user.email "${GH_EMAIL}"
- echo "machine github.com login ${GH_NAME} password ${GH_TOKEN}" > ~/.netrc
- cd website && yarn install && yarn run redoc-appd && GIT_USER="${GH_NAME}" yarn run publish-gh-pages
4 changes: 2 additions & 2 deletions LICENSE
100644 → 100755
Original file line number Diff line number Diff line change
Expand Up @@ -178,15 +178,15 @@
APPENDIX: How to apply the Apache License to your work.

To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
boilerplate notice, with the fields enclosed by brackets "{}"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.

Copyright [yyyy] [name of copyright owner]
Copyright 2017 FDC3

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
Expand Down
7 changes: 7 additions & 0 deletions LICENSE.spdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
SPDXVersion: SPDX-2.0
DataLicense: CC0-1.0
Creator: FDC3
PackageName: FDC3
PackageOriginator: FDC3
PackageHomePage: https://github.com/FDC3/FDC3
PackageLicenseDeclared: Apache-2.0
5 changes: 5 additions & 0 deletions NOTICE
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
FDC3 - FINOS
Copyright 2017 FDC3 [email protected]

This product includes software developed at the Fintech Open Source Foundation (https://www.finos.org/).

124 changes: 124 additions & 0 deletions Plan.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,124 @@
# Single FDC3 Repository and Website

This repository uses [Docusaurus](https://docusaurus.io) to author and host the FDC3 website and documentation, based on markdown files.
It is based on all FDC3 content, including source code and examples, being present in the same directory to reduce duplication and increase consistency.

## Plan

- [x] Try out Docusaurus
- [x] Host on GitHub Pages
- [x] Attempt to apply styling and assets from https://fdc3.finos.org to this website
- [x] Copy docs from other FDC3 repositories into this single repository
- [x] Setup CI
- [x] Copy code/examples from other FDC3 repositories
- [x] Add docs from use cases
- [x] Integrate OpenAPI docs for app directory (Redoc)
- [x] GitHub README must adhere to FINOS standard
- [x] Present to PMC
- [ ] About page (Information about the FDC3 and its mission)
- [ ] Community page (Information and links to FINOS)
- [ ] News/blogs area (remove existing sample content, add real content)
- [ ] Docusaurus website versioning (first version to be 0.9 or 1.0-beta)
- [ ] Repository versioning instructions (i.e. tags and release notes)
- [ ] Documentation improvements & extra content
- [ ] An extra page under the docs for each area with the working group info from the wiki
- [ ] Finalise styling and assets
- [ ] Users/members section
- [ ] FINOS section on landing page (from current fdc3.finos.org)
- [ ] Identify improvement areas for working groups

## Later
- [ ] Intent reference
- [ ] Tutorial content (after 1.0)

For more detail, see the [FINOS FDC3 1.0 Release Public Launch Documentation Sub-Plan](https://finosfoundation.atlassian.net/wiki/spaces/FDC3/pages/711950361/FDC3+1.0+Release+Public+Launch+Documentation+Sub-Plan).

## Developer Information

The included example website was generated by following the [Docusaurus installation steps](https://docusaurus.io/docs/en/installation).

### Required tools

* NodeJS 8+ [[Install](https://nodejs.org/en/download/)]
* Yarn 1.5+ [[Install](https://yarnpkg.com/lang/en/docs/install/)]

### Structure

The repository follows the standard Docusaurus website structure. For more information, see [Creating your site](https://docusaurus.io/docs/en/site-creation).
Propose to move the working group github sites under the same structure to simplify

```
root-directory
├── docs
└── website
├── blog
├── core
│ └── Footer.js
├── package.json
├── pages
├── sidebars.json
├── siteConfig.js
└── static
└── src
├── api
├── app-directory
├── context
├── intents
└── examples
├── context
└── intents
```

### Running the website locally

1. Navigate to the `website` folder:
```
cd website
```

2. Install pre-requisites (first time only)
```
yarn
```

3. Run the local web server:
```
yarn start
```

4. Navigate to the website: http://localhost:3000

### Publishing to GitHub Pages

The following properties were added to `website/siteConfig.js` (amongst others):

```js
const siteConfig = {
url: 'https://rikoe.github.io',
baseUrl: '/FDC3/',
projectName: 'FDC3',
organizationName: 'rikoe'
}
```

To publish the website, follow this steps:

1. Navigate to the `website` folder:
```
cd website
```

2. Publish:
```
GIT_USER=<GIT_USER> USE_SSH=true yarn run publish-gh-pages
```

This will publish to the `gh-pages` branch of the repository, which will automatically be hosted on GitHub Pages.

### Continuous Integration

The CI build is hosted on Travis CI at https://travis-ci.com/rikoe/FDC3. When new changes are committed to `master`, Travis will automatically deploy an updated version of the website to GitHub Pages.

> For full documentation about publishing Docusaurus websites, see [Publishing your site](https://docusaurus.io/docs/en/publishing).

> For more information about GitHub Pages, see [GitHub's FAQ](https://help.github.com/articles/user-organization-and-project-pages/).
51 changes: 23 additions & 28 deletions README.md
100644 → 100755
Original file line number Diff line number Diff line change
@@ -1,38 +1,33 @@
# FDC3 Charter
[![Build Status](https://travis-ci.com/rikoe/FDC3.svg?branch=master)](https://travis-ci.com/rikoe/FDC3)
[![FINOS - Incubating](https://cdn.rawgit.com/finos/contrib-toolbox/master/images/badge-incubating.svg)](https://finosfoundation.atlassian.net/wiki/display/FINOS/Incubating)
[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
[![Stack Overflow](https://img.shields.io/badge/stackoverflow-tag-orange.svg)](https://stackoverflow.com/questions/tagged/fdc3)

# FDC3

### Summary
The mission of the Financial Desktop Connectivity and Collaboration Consortium (FDC3) is to develop specific protocols and taxonomies to advance the ability of desktop applications in financial workflows to interoperate in a plug-and-play fashion and without prior, bi-lateral agreements.

### Scope
Financial Desktop applications include any desktop application used in common financial workflows:
## Installation

FDC3 is a standard and as such has no direct install.
Check out the [reference implementations](docs/reference-implementations.md) for actual code to install.

## Usage example

* Traditional native applications implemented in C++, .NET, Java, Python, etc
* Hybrid web/native applications - stand alone native apps embedding Chromium (e.g. Electron, CEF, NW.js)
* Desktop Web Applications - platform based apps extending Chromium (e.g. OpenFin, Hosted Web Apps)
* Common desktop applications not specific to finance, but critical to workflows - such as Excel, Outlook, etc.
* Web Applications running in a commercial browser
Check out how FDC3 is [being used](docs/usage-examples.md).

This standards group is focused specifically on the desktop. Activities of the desktop interoperability group do not include:
## Contributing

* Defining financial objects - where existing standards are well established
* Interoperability between mobile apps
* Interoperability via REST or other client to server communication
Note: While these areas are out of scope, compatibility with Mobile and/or REST are still valid points of consideration for the FDC3.
1. Fork it (<https://github.com/rikoe/FDC3/fork>)
2. Create your feature branch (`git checkout -b feature/fooBar`)
3. Commit your changes (`git commit -am 'Add some fooBar'`)
4. Push to the branch (`git push origin feature/fooBar`)
5. Create a new Pull Request

### Success Criteria
* Commitment from major banks and application vendors to support the standards set by the FDC3
* Workflow integrations in the wild leveraging the standards
## License

### Deliverables
* Define criteria and mechanics for secure communication between apps
* Define key functions that require specific standards for interoperability
* Create an agreed taxonomy for common app “intents” within financial desktop workflows
* Create an agreed taxonomy for common data to be shared across apps within financial desktop workflows
* Provide reference implementations of all standards
* Maintain the above standards and reference implementations
Copyright 2017 FDC3

### Participation
To be successful, the FDC3 is expected to have a critical mass of active participants for its duration. Effective participation in the FDC3 means participation in the form of research, authoring, editing, and development activities outside the scope of attending regular meetings.
Distributed under the [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0).

### Licensing
The FDC3 will use Apache2 license or similar for all deliverables.
SPDX-License-Identifier: [Apache-2.0](https://spdx.org/licenses/Apache-2.0)
Loading