linker

An application that collects links (work in progress)

https://github.com/data-miner00/linker

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.3%) to scientific vocabulary

Keywords

csharp dotnet
Last synced: 6 months ago · JSON representation ·

Repository

An application that collects links (work in progress)

Basic Info
  • Host: GitHub
  • Owner: data-miner00
  • License: wtfpl
  • Language: C#
  • Default Branch: master
  • Homepage:
  • Size: 933 KB
Statistics
  • Stars: 1
  • Watchers: 2
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Topics
csharp dotnet
Created almost 4 years ago · Last pushed 7 months ago
Metadata Files
Readme License Citation

README.md

Contributors Forks Stargazers Issues MIT License


Linker

An application that stores and manages URL links.
View Demo »

Explore the docs · Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Roadmap
  4. Contributing
  5. License
  6. Acknowledgments

About

A suite of applications to store, manage and share links. I found that keeping track of useful websites/URL can be arduous and that was the raison d'être for this project. However, as the time goes by, I started to add more functionalities such as authorization, real-time chat, GraphQL etc to expand my knowledge and challenge myself.

This project is still in active development and the entities and database design can be temporary found in the drawio document in the docs folder.

(back to top)

Directories

Application

| | Directory | Description | | --- | --- | --- | | 1. | Linker.Common | Library that includes commonly shared codes across other projects | | 2. | Linker.ConsoleUI | The very first version of the application. Uses CSV as the backing store and has limited features | | 3. | Linker.Core | Old library that contains the models and interfaces used across the codebase | | 4. | Linker.Core.V2 | Latest library that contains the models and interfaces with the updated design decision | | 5. | Linker.Data | The integration layer between the application and data sources such as database | | 6. | Linker.Database | The project that stores all the TSQL definitions such as tables and stored procedures for the database | | 7. | Linker.Debugger | A console for debugging codes | | 8. | Linker.GraphQL | The client with GraphQL. Working in progress. | | 9. | Linker.GrpcServer | An experimental client with gRPC. Working in progress. | | 10. | Linker.Mvc | The main client for the application. Working in progress. | | 11. | Linker.Preprocess | A small tool to collect minimal links | | 12. | Linker.WebApi | A HTTP client for the app | | 13. | Linker.WebJob | A cron-powered background service that housekeep the records | | 14. | Linker.Wpf | A GUI client for the app. Working in progress. |

Tests | | Directory | Description | | --- | --- | --- | | 1. | Linker.Common.UnitTests | Unit tests for Linker.Common | | 2. | Linker.ConsoleUI.UnitTests | Unit tests for Linker.ConsoleUI | | 3. | Linker.Mvc.UnitTests | Unit tests for Linker.Mvc. Uses SpecFlow for BDD styled tests. | | 4. | Linker.TestCore | Library that contains utilities for unit test projects | | 5. | Linker.WebApi.IntegrationTests | Integration tests for Linker.WebApi (Have not set up yet). | | 6. | Linker.WebApi.UnitTests | Unit tests for Linker.WebApi |

Built With

The technologies and tools used within this project.

  • .NET Core
  • .NET MVC
  • Pnpm
  • TailwindCSS
  • JavaScript
  • jQuery
  • TSQL/SQL Server
  • SignalR
  • Powershell
  • xUnit
  • SpecFlow

(back to top)

Getting Started

Prerequisites

The list of tools that is used when development.

Installation

To run this template project in your local for personal use or contribution, simply perform the following.

  1. Clone the repo sh git clone https://github.com/data-miner00/Linker.git
  2. Install Node dependencies sh pnpm i
  3. Restore Nuget sh dotnet restore
  4. Build projects dotnet build
  5. Restore database (steps coming soon..)
  6. Run Mvc dotnet run --project src/Linker.Mvc/Linker.Mvc.csproj

(back to top)

Roadmap

  • [ ] Add OAuth/OIDC/Okta authentication
  • [ ] Add QRCode
  • [ ] Use RabbitMQ
  • [ ] Use Grafana for telemetry tracking
  • [ ] Configure code coverage with report generator
  • [ ] Create Mobile App
  • [ ] Sending Email
  • [ ] Working SpecFlow unit tests
  • [ ] Working integration tests
  • [ ] Add component tests
  • [ ] Change GitHub Workflows to use Azure Pipelines

See the open issues for a full list of proposed features (and known issues).

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)

License

Distributed under the WTFPL License. See LICENSE for more information.

(back to top)

Acknowledgments

List of resources that are helpful and would like to give credit to.

(back to top)

Owner

  • Name: Shaun Chong
  • Login: data-miner00
  • Kind: user
  • Location: undefined, Mars
  • Company: Experian

Full Queue Developer

Citation (CITATION.cff)

# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!

cff-version: 1.2.0
title: Linker
message: 'If you use this software, please cite it as below.'
type: software
authors:
  - given-names: Mum Khong
    family-names: Chong
    email: mumk0313@gmail.com
repository-code: 'https://github.com/data-miner00/Linker'
abstract: >-
  Managing links and URLs today can be challenging and
  chaotic. Linker aims to provide users to collect, group
  and share links with least mental overhead.
keywords:
  - csharp
  - aspnetcore
  - mvc
  - graphql
  - api
  - url
  - grpc
  - unit-tests
license: WTFPL
commit: a5747dc21fde63278e4b83ec288384f7625228dd
version: 0.0.0-Canary

GitHub Events

Total
  • Issues event: 2
  • Delete event: 3
  • Issue comment event: 1
  • Push event: 15
  • Pull request event: 5
  • Create event: 2
Last Year
  • Issues event: 2
  • Delete event: 3
  • Issue comment event: 1
  • Push event: 15
  • Pull request event: 5
  • Create event: 2

Committers

Last synced: over 1 year ago

All Time
  • Total Commits: 432
  • Total Committers: 2
  • Avg Commits per committer: 216.0
  • Development Distribution Score (DDS): 0.03
Past Year
  • Commits: 253
  • Committers: 1
  • Avg Commits per committer: 253.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
data-miner00 d****0 419
Shaun Chong m****3@g****m 13

Issues and Pull Requests

Last synced: about 1 year ago

All Time
  • Total issues: 1
  • Total pull requests: 0
  • Average time to close issues: 14 days
  • Average time to close pull requests: N/A
  • Total issue authors: 1
  • Total pull request authors: 0
  • Average comments per issue: 1.0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 1
  • Pull requests: 0
  • Average time to close issues: 14 days
  • Average time to close pull requests: N/A
  • Issue authors: 1
  • Pull request authors: 0
  • Average comments per issue: 1.0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • data-miner00 (2)
Pull Request Authors
  • data-miner00 (3)
Top Labels
Issue Labels
Pull Request Labels

Dependencies

src/Linker.Common/Linker.Common.csproj nuget
  • CsvHelper 27.2.1
  • System.Configuration.ConfigurationManager 6.0.0
src/Linker.Common.UnitTests/Linker.Common.UnitTests.csproj nuget
  • Microsoft.NET.Test.Sdk 16.9.4
  • coverlet.collector 3.0.2
  • xunit 2.4.1
  • xunit.runner.visualstudio 2.4.3
src/Linker.ConsoleUI/Linker.ConsoleUI.csproj nuget
  • Autofac 6.3.0
  • CsvHelper 27.2.1
  • Ensure.That 10.1.0
  • System.Configuration.ConfigurationManager 6.0.0
src/Linker.ConsoleUI.UnitTests/Linker.ConsoleUI.UnitTests.csproj nuget
  • Microsoft.NET.Test.Sdk 16.9.4
  • System.Configuration.ConfigurationManager 6.0.0
  • coverlet.collector 3.0.2
  • xunit 2.4.1
  • xunit.runner.visualstudio 2.4.3
src/Linker.Core/Linker.Core.csproj nuget
  • CsvHelper 27.2.1
  • System.Configuration.ConfigurationManager 6.0.0
src/Linker.Data/Linker.Data.csproj nuget
  • Dapper 2.0.123
  • Ensure.That 10.1.0
  • System.Configuration.ConfigurationManager 6.0.1
  • System.Data.SQLite.Core 1.0.116
src/Linker.Debugger/Linker.Debugger.csproj nuget
  • System.Configuration.ConfigurationManager 6.0.1
  • System.Data.SQLite.Core 1.0.116
src/Linker.WebApi/Linker.WebApi.csproj nuget
  • Swashbuckle.AspNetCore 6.2.3