Skip to content

Commit

Permalink
doc: update the README.md to include documentation and NuGet package
Browse files Browse the repository at this point in the history
  • Loading branch information
phmatray committed Nov 27, 2023
1 parent 60038ba commit 40f98cb
Show file tree
Hide file tree
Showing 3 changed files with 117 additions and 36 deletions.
128 changes: 93 additions & 35 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ A modern and robust C# Technical Analysis library based on the original open-sou
---

[![phmatray - TaLibStandard](https://img.shields.io/static/v1?label=phmatray&message=TaLibStandard&color=blue&logo=github)](https://github.com/phmatray/TaLibStandard "Go to GitHub repo")
[![License: BSD-3-Clause](https://img.shields.io/badge/License-BSD--3--Clause-blue.svg)](https://opensource.org/licenses/BSD-3-Clause)
[![License: GPL-3.0-or-later](https://img.shields.io/badge/License-GPLv3.0--or--later-blue.svg)](https://www.gnu.org/licenses/gpl-3.0.html)
[![stars - TaLibStandard](https://img.shields.io/github/stars/phmatray/TaLibStandard?style=social)](https://github.com/phmatray/TaLibStandard)
[![forks - TaLibStandard](https://img.shields.io/github/forks/phmatray/TaLibStandard?style=social)](https://github.com/phmatray/TaLibStandard)

Expand All @@ -20,77 +20,135 @@ A modern and robust C# Technical Analysis library based on the original open-sou

---

## 📝 Table of Contents

<!-- TOC -->
* [TaLibStandard](#talibstandard)
* [Introduction](#introduction)
* [Goal](#goal)
* [Getting started](#getting-started)
* [Features](#features)
* [Library](#library)
* [Tests Specifications](#tests-specifications)
* [Installation](#installation)
* [Code Quality](#code-quality)
* [Issues and Feature Requests](#issues-and-feature-requests)
* [Contributing](#contributing)
* [Release notes](#release-notes)
* [Licence](#licence)
* [📝 Table of Contents](#-table-of-contents)
* [📚 Introduction](#-introduction)
* [🎯 Goal](#-goal)
* [🏁 Getting started](#-getting-started)
* [📌 Features](#-features)
* [Roadmap (next features)](#roadmap-next-features)
* [📄 Documentation](#-documentation)
* [📥 Installation](#-installation)
* [📋 Prerequisites](#-prerequisites)
* [🚀 We use the latest C# features](#-we-use-the-latest-c-features)
* [📦 NuGet Packages](#-nuget-packages)
* [🧪 Tests Specifications](#-tests-specifications)
* [💾 Installation](#-installation-1)
* [📊 Code Quality](#-code-quality)
* [❓ Issues and Feature Requests](#-issues-and-feature-requests)
* [🤝 Contributing](#-contributing)
* [🌟 Contributors](#-contributors)
* [✉️ Contact](#-contact)
* [📝 Release notes](#-release-notes)
* [📜 License](#-license)
<!-- TOC -->

## Introduction
## 📚 Introduction

TaLibStandard is a modern interpretation of the widely used [TA-Lib](https://ta-lib.org), reimagined in C# 12. It is designed to be reliable, efficient, and user-friendly for developers performing financial market analysis. The addition of .NET's Generic Math feature allows for a richer, more flexible library that can handle a variety of number types.

## Goal
## 🎯 Goal

The primary objective of TaLibStandard is to provide a comprehensive, feature-rich and accessible library for conducting technical analysis on financial market data.

## Getting started
## 🏁 Getting started

To get started with TaLibStandard, you can clone the repository and explore the examples provided in the `examples` directory. You can also refer to the list of [available functions](./docs/functions.md) in the documentation for a comprehensive overview of the library's capabilities.

## Features
## 📌 Features

* Support for Double, Float, and Decimal data types, with the help of .NET's Generic Math
* With some basic tests (coverage: 85%)
* Comprehensive API documentation that is easy to understand
* [x] Support for Double, Float, and Decimal data types, with the help of .NET's Generic Math
* [x] With some basic tests (coverage: >= 80%)

### Library
### Roadmap (next features)

* Target framework : .NET 8
* Language version : C# 12
* [ ] Comprehensive API documentation that is easy to understand
* [ ] High-Level API for common use cases
* [ ] Support for more data types
* [ ] Support for more functions
* [ ] .NET Exception handling (BREAKING CHANGE)
* [ ] More tests
* [ ] More examples

## 📄 Documentation

**TaLibStandard** provides a [COMPLETE DOCUMENTATION](https://github.com/phmatray/TaLibStandard/blob/main/docs/README.md) of the library.

All summaries are written in English. If you want to help us translate the documentation, please open an issue to
discuss it.

> **Note:** The documentation is generated using [Doraku/DefaultDocumentation]() tool. It is generated automatically when the project is built.
## 📥 Installation

### 📋 Prerequisites

- .NET 8.0 (supported versions: 8.x)
- A C# IDE (Visual Studio, JetBrains Rider, etc.)
- A C# compiler (dotnet CLI, etc.)

### 🚀 We use the latest C# features

### Tests Specifications
This library targets .NET 8.0 and uses the latest C# features. It is written in C# 12.0 and uses the new `init`
properties, `record` types, `switch` expressions, `using` declarations and more.

* Target framework : .NET 8
* Language version : C# 12
* xUnit and FluentAssertions
I invite you to read the [C# 12.0 documentation](https://docs.microsoft.com/en-us/dotnet/csharp/whats-new/csharp-12) to
learn more about these features.

## Installation
### 📦 NuGet Packages

| Package Name | NuGet Version Badge | NuGet Downloads Badge |
|--------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------|
| Atypical.TechnicalAnalysis.Candles | [![NuGet](https://img.shields.io/nuget/v/Atypical.TechnicalAnalysis.Candles.svg)](https://www.nuget.org/packages/Atypical.TechnicalAnalysis.Candles) | [![NuGet](https://img.shields.io/nuget/dt/Atypical.TechnicalAnalysis.Candles.svg)](https://www.nuget.org/packages/Atypical.TechnicalAnalysis.Candles) |
| Atypical.TechnicalAnalysis.Functions | [![NuGet](https://img.shields.io/nuget/v/Atypical.TechnicalAnalysis.Functions.svg)](https://www.nuget.org/packages/Atypical.TechnicalAnalysis.Functions) | [![NuGet](https://img.shields.io/nuget/dt/Atypical.TechnicalAnalysis.Functions.svg)](https://www.nuget.org/packages/Atypical.TechnicalAnalysis.Functions) |
| Atypical.TechnicalAnalysis.Core | [![NuGet](https://img.shields.io/nuget/v/Atypical.TechnicalAnalysis.Common.svg)](https://www.nuget.org/packages/Atypical.TechnicalAnalysis.Common) | [![NuGet](https://img.shields.io/nuget/dt/Atypical.TechnicalAnalysis.Common.svg)](https://www.nuget.org/packages/Atypical.TechnicalAnalysis.Common) |

This table is automatically updated regularly the latest developments and releases in the Atypical Technical Analysis suite.

### 🧪 Tests Specifications

* Target framework : .NET 8
* Language version : C# 12
* xUnit and FluentAssertions

## 💾 Installation

To install TaLibStandard, you can use the NuGet package manager. Run the following command in your terminal:

```shell
dotnet add package TaLibStandard
dotnet add package Atypical.TechnicalAnalysis.Candles
dotnet add package Atypical.TechnicalAnalysis.Functions
```

## Code Quality
## 📊 Code Quality

We strive for the highest code quality in TaLibStandard, leveraging Codacy—an automated code analysis/quality tool. Codacy provides static analysis, cyclomatic complexity measures, duplication identification, and code unit test coverage changes for every commit and pull request.

View our Codacy metrics [here](https://app.codacy.com/gh/phmatray/TaLibStandard).

## Issues and Feature Requests
## Issues and Feature Requests

For reporting bugs or suggesting new features, kindly submit these as an issue to the [TaLibStandard Repository](https://github.com/phmatray/TaLibStandard/issues). We value your contributions, but before submitting an issue, please ensure it is not a duplicate of an existing one.

## Contributing
## 🤝 Contributing

We welcome contributions from the community! If you'd like to contribute to TaLibStandard, please fork the repository and submit a pull request. For major changes, please open an issue first to discuss what you would like to change.

## Release notes
## 🌟 Contributors

[![Contributors](https://contrib.rocks/image?repo=phmatray/TaLibStandard)](http://contrib.rocks)

## ✉️ Contact

You can contact us by opening an issue on this repository.

## 📝 Release notes

(Add details of the version history, bug fixes, and new feature additions in each release here)

## Licence
## 📜 License

GNU General Public License v3.0
GNU General Public License v3.0 or later.
23 changes: 23 additions & 0 deletions docs/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# 📄 TaLibStandard Documentation

## 📚 Read the documentation

### ...on GitHub (recommended)

The main documentation for TaLibStandard is located in the following files. They are written in Markdown and can be read directly from GitHub:

- **Candles**: [TechnicalAnalysis.Candles](https://github.com/phmatray/TaLibStandard/blob/main/docs/candles/TechnicalAnalysis.Candles.md)
- **Functions**: [TechnicalAnalysis.Functions](https://github.com/phmatray/TaLibStandard/blob/main/docs/functions/TechnicalAnalysis.Functions.md)
- **Common**: [TechnicalAnalysis.Common](https://github.com/phmatray/TaLibStandard/blob/main/docs/common/TechnicalAnalysis.Common.md)

### ...in your IDE

If you are using an IDE that supports Markdown, you can open the following files directly in your IDE:

- **Candles**: [./docs/candles/TechnicalAnalysis.Candles.md](./candles/TechnicalAnalysis.Candles.md)
- **Functions**: [./docs/functions/TechnicalAnalysis.Functions.md](./functions/TechnicalAnalysis.Functions.md)
- **Common**: [./docs/common/TechnicalAnalysis.Common.md](./common/TechnicalAnalysis.Common.md)

## 🤝 Contributing

If you want to contribute to the documentation, just edit the summaries in the source code and build the solution. The documentation will be automatically generated in the `docs` folder.
2 changes: 1 addition & 1 deletion src/Directory.Build.props
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
<PropertyGroup>
<Authors>Philippe Matray</Authors>
<Description>
TaLibStandard is a modern interpretation of the widely used [TA-Lib](https://ta-lib.org),
TaLibStandard is a modern interpretation of the widely used TA-Lib,
reimagined in C# 12. It is designed to be reliable, efficient, and user-friendly for developers
performing financial market analysis.
</Description>
Expand Down

0 comments on commit 40f98cb

Please sign in to comment.