Skip to content

Commit 459e421

Browse files
author
Tom
authored
Merge pull request #1 from tberey/development
Ver:1.0.0--Initial-Commit
2 parents b7614bf + c8af687 commit 459e421

22 files changed

+6950
-637
lines changed

.env.sample

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,7 @@
1-
APP_NAME = tomco-hq
1+
APP_NAME = ts-node-electron-aws-s3-app
22
PORT = 3000
33
HOSTNAME = 127.0.0.1
44

5-
DB_HOST = <host>
6-
DB_USER = <username>
7-
DB_PASSWORD = <password>
8-
DB_NAME = <db-name>
9-
105
ELECTRON_WIN_WIDTH = 500
116
ELECTRON_WIN_HEIGHT = 600
127

.eslintignore

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
node_modules
2+
build
3+
logs
4+
private
5+
downloads
6+
.env

.eslintrc

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
{
2+
"root": true,
3+
"parser": "@typescript-eslint/parser",
4+
"plugins": [
5+
"@typescript-eslint"
6+
],
7+
"extends": [
8+
"eslint:recommended",
9+
"plugin:@typescript-eslint/eslint-recommended",
10+
"plugin:@typescript-eslint/recommended"
11+
],
12+
"rules": {
13+
"@typescript-eslint/ban-types": ["error",
14+
{
15+
"types": {
16+
"object": false
17+
},
18+
"extendDefaults": true
19+
}
20+
],
21+
"no-console": 1, // 0 = Off, 1 = Warn (pass), 2 = Error (fail)
22+
"prefer-promise-reject-errors": 1,
23+
"no-extra-parens": 0,
24+
"no-loss-of-precision": 1,
25+
"no-promise-executor-return":1,
26+
"no-unreachable-loop": 1,
27+
"no-template-curly-in-string": 1,
28+
"no-unsafe-optional-chaining": 1,
29+
"no-useless-backreference": 1,
30+
"require-atomic-updates": 1,
31+
"no-await-in-loop": 1
32+
}
33+
}

.github/workflows/codeql-analysis.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ name: "CodeQL"
22

33
on:
44
push:
5-
branches: [ development ]
5+
branches: [ development, main ]
66
pull_request:
77
# The branches below must be a subset of the branches above
88
branches: [ main ]

README.md

Lines changed: 222 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,223 @@
1-
# tomco-hq
1+
<!--
2+
*** Using markdown "reference style" links for readability.
3+
*** Reference links are enclosed in brackets [ ] instead of parentheses ( ).
4+
*** See the bottom of this document for the declaration of the reference variables.
5+
*** https://www.markdownguide.org/basic-syntax/#reference-style-links
6+
-->
27

3-
## pre-alpha build
8+
<!-- PROJECT SHIELDS -->
9+
[![Workflow][workflow-shield]][workflow-url]
10+
[![Issues][issues-shield]][issues-url]
11+
[![Version][version-shield]][version-url]
12+
[![Stargazers][stars-shield]][stars-url]
13+
[![Forks][forks-shield]][forks-url]
14+
[![Contributors][contributors-shield]][contributors-url]
15+
[![LinkedIn][linkedin-shield]][linkedin-url]
16+
17+
18+
19+
<!-- PROJECT LOGO -->
20+
<br>
21+
<div align="center">
22+
<a href="https://github.com/tberey">
23+
<img src="public/assets/logo.png" alt="TomCo (Technology & Online Media Company) Logo" width="200" height="100">
24+
</a><br><br>
25+
<div align="center"><h1>TS-Node-Electron-AWS-S3-App</h1>A robust Electron application, that serves a REST API to interact with AWS S3.</div>
26+
<div align="right">
27+
<br>
28+
<a href="https://github.com/tberey/ts-node-electron-aws-s3-app/blob/development/README.md"><strong>Documentation »</strong></a>
29+
<br>
30+
<a href="#usage">View Demo</a>
31+
·
32+
<a href="https://github.com/tberey/ts-node-electron-aws-s3-app/issues">Report Bug</a>
33+
·
34+
<a href="https://github.com/tberey/ts-node-electron-aws-s3-app/issues">Request Feature</a>
35+
</div>
36+
</div>
37+
38+
39+
40+
<!-- TABLE OF CONTENTS -->
41+
<details open="open" style="padding:4px;display:inline;border-width:1px;border-style:solid;">
42+
<summary><b style="display: inline-block"><u>Contents</u></b></summary>
43+
<ol>
44+
<li>
45+
<a href="#about-this-project">About</a>
46+
<ul>
47+
<li><a href="#tech-stack">Tech Stack</a></li>
48+
</ul>
49+
</li>
50+
<li>
51+
<a href="#startup">Startup</a>
52+
<ul>
53+
<li><a href="#prerequisites">Prerequisites</a></li>
54+
<li><a href="#installation">Installation</a></li>
55+
</ul>
56+
</li>
57+
<li>
58+
<a href="#usage">Usage</a>
59+
<ul>
60+
<li><a href="#screenshots">Screenshots</a></li>
61+
</ul>
62+
</li>
63+
<li><a href="#roadmap">Roadmap</a></li>
64+
<li><a href="#changelog">Changelog</a></li>
65+
<li><a href="#contributing">Contributing</a></li>
66+
<li><a href="#contact">Contact</a></li>
67+
<li><a href="#acknowledgements">Acknowledgements</a></li>
68+
</ol>
69+
</details><hr><br>
70+
71+
72+
73+
<!-- ABOUT THis PROJECT -->
74+
## About This Project
75+
This is a Electron application, built in Node and TypeScript, that delivers a client a REST API to fully interact with AWS's S3 buckets. This is not a web application directly, but it is a web-app packaged into an Electron window, that runs like an executable, using Chromium browser tech.
76+
77+
### Tech Stack
78+
* [Typescript](https://www.typescriptlang.org/)
79+
* [NodeJS](https://nodejs.org/en/)
80+
* [Electron](https://www.electronjs.org/)
81+
* [ExpressJS](https://expressjs.com/)
82+
* [AWS](https://aws.amazon.com/)
83+
* [EJS](https://ejs.co/)
84+
* [Axios](https://axios-http.com/)
85+
* [fs](https://nodejs.org/api/fs.html)
86+
* [Rollbar](https://rollbar.com/)
87+
* [ESLint](https://eslint.org/)
88+
* [MochaChai](https://mochajs.org/)
89+
90+
<br><hr><br>
91+
92+
93+
94+
<!-- STARTUP -->
95+
## Startup
96+
For help or guidance in downloading and running the application, see the following subsections.
97+
<br>
98+
99+
#### Prerequisites
100+
[You must have npm (node package manager) and Nodejs installed on your system!](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm)
101+
102+
1. Setup npm:
103+
```sh
104+
npm install npm@latest -g
105+
```
106+
<br>
107+
108+
#### Installation
109+
1. Clone/Download:
110+
```sh
111+
git clone https://github.com/tberey/ts-node-electron-aws-s3-app.git
112+
```
113+
2. Install:
114+
```sh
115+
npm install && npm update
116+
```
117+
3. Start:
118+
```sh
119+
npm run start:app
120+
```
121+
122+
<br><hr><br>
123+
124+
125+
126+
<!-- USAGE EXAMPLES -->
127+
## Usage
128+
This is a electron application, which means it runs on your system, rather than a browser web app (yes, electron is technically just doing what a web browser does).<br>As Such, simply install and run this application and the window will load automatically as if running an executable.
129+
130+
| Endpoint | Action/Desc. | Full URI <i>(hosted locally, for some port; e.g.: 3000)</i> |
131+
|:---|:---|:---|
132+
| <ul><li>"/"</li></ul> | Status: 200 | <ul><li>"http://localhost:3000/"</li></ul> |
133+
134+
<br>
135+
136+
### Screenshots
137+
138+
Logginf Sample:
139+
140+
![Screenshot#1](https://github.com/tberey/tomco-hq/blob/development/screenshots/local-logs-sample.png?raw=true)
141+
142+
<br><hr><br>
143+
144+
145+
146+
<!-- ROADMAP -->
147+
## Roadmap
148+
Below is the refined and confirmed roadmap, that has been planned for completion. See [open issues][issues-url] and also the [project board][project-url], for any other proposed features or known issues, which may not be listed below.
149+
150+
| Feature/Task/Bugfix | Details | Version <i>(if released)</i> | Notes |
151+
|:---|:---|:---|:---|
152+
| <i>Bug#1</i> | <i>Bug details...</i> | <i>0.0.1</i> | <i>example#1</i> |
153+
| <i>Feature#4</i> | <i>Feature details...</i> | | <i>example#2</i> |
154+
155+
<br><hr><br>
156+
157+
158+
159+
<!-- CHANGELOG -->
160+
## Changelog
161+
162+
| Version | Date | Changes |
163+
|:---|:---|:---|
164+
| 1.0.0 | 2021-07-10 | <ul><li>Initial Commit.</li><li>Add inital directory structure and files.</li><li>Add Screenshots directory, and images.</li><li>Create and format README.md</li></ul> |
165+
166+
<br><hr><br>
167+
168+
169+
170+
<!-- CONTRIBUTING -->
171+
## Contributing
172+
Contributions are welcomed and, of course, **greatly appreciated**.
173+
174+
1. Fork the Project.
175+
2. Create your Feature Branch (`git checkout -b feature/Feature`)
176+
3. Commit your Changes (`git commit -m 'Add some Feature'`)
177+
4. Push to the Branch (`git push origin feature/Feature`)
178+
5. Open a Pull Request.
179+
180+
<br><hr><br>
181+
182+
183+
184+
<!-- CONTACT -->
185+
### Contact
186+
187+
<b>Tom Berey</b>; <i>Project Manager, Lead Developer, Principal Tester & Customer Services</i>;<br>tomberey1@gmail.com;
188+
189+
* [Issues & Requests][issues-url]
190+
* [My Other Projects](https://github.com/tberey?tab=repositories)
191+
* [Personal Website](https://tberey.github.io/)
192+
* [Linked In](https://uk.linkedin.com/in/thomas-berey-2a1860129)
193+
194+
<br>
195+
196+
<!-- ACKNOWLEDGEMENTS -->
197+
### Acknowledgements
198+
199+
* [Me](https://github.com/tberey)
200+
201+
202+
203+
<br><br><hr><div align="center">TomCo&trade; (Technology & Online Media Company &copy;)</div>
204+
205+
206+
207+
208+
<!-- SPECIFIC URLS - NEED CHANGING PER PROJECT -->
209+
[workflow-shield]: https://github.com/tberey/ts-node-electron-aws-s3-app/actions/workflows/codeql-analysis.yml/badge.svg
210+
[workflow-url]: https://github.com/tberey/ts-node-electron-aws-s3-app/actions
211+
[version-shield]: https://img.shields.io/github/v/release/tberey/ts-node-electron-aws-s3-app
212+
[version-url]: https://github.com/tberey/ts-node-electron-aws-s3-app/releases/
213+
[stars-shield]: https://img.shields.io/github/stars/tberey/ts-node-electron-aws-s3-app.svg
214+
[stars-url]: https://github.com/tberey/ts-node-electron-aws-s3-app/stargazers
215+
[contributors-shield]: https://img.shields.io/github/contributors/tberey/ts-node-electron-aws-s3-app.svg
216+
[contributors-url]: https://github.com/tberey/ts-node-electron-aws-s3-app/graphs/contributors
217+
[forks-shield]: https://img.shields.io/github/forks/tberey/ts-node-electron-aws-s3-app.svg
218+
[forks-url]: https://github.com/tberey/ts-node-electron-aws-s3-app/network/members
219+
[issues-shield]: https://img.shields.io/github/issues/tberey/ts-node-electron-aws-s3-app.svg
220+
[issues-url]: https://github.com/tberey/ts-node-electron-aws-s3-app/issues
221+
[linkedin-shield]: https://img.shields.io/badge/-LinkedIn-black.svg?logo=linkedin&colorB=555
222+
[linkedin-url]: https://uk.linkedin.com/in/thomas-berey-2a1860129
223+
[project-url]: https://github.com/tberey/ts-node-electron-aws-s3-app/projects

SECURITY.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
# Security Policy
2+
3+
## Supported Versions
4+
5+
Use this section to tell people about which versions of your project are
6+
currently being supported with security updates.
7+
8+
| Version | Supported |
9+
| ------- | ------------------ |
10+
| 5.1.x | :white_check_mark: |
11+
| 5.0.x | :x: |
12+
| 4.0.x | :white_check_mark: |
13+
| < 4.0 | :x: |
14+
15+
## Reporting a Vulnerability
16+
17+
Use this section to tell people how to report a vulnerability.
18+
19+
Tell them where to go, how often they can expect to get an update on a
20+
reported vulnerability, what to expect if the vulnerability is accepted or
21+
declined, etc.

0 commit comments

Comments
 (0)