diff --git a/.github/CODE_OF_CONDUCT.md b/.github/CODE_OF_CONDUCT.md
new file mode 100644
index 0000000..fcf4539
--- /dev/null
+++ b/.github/CODE_OF_CONDUCT.md
@@ -0,0 +1,78 @@
+
+# Contributor Covenant Code of Conduct
+
+## Our Pledge
+
+In the interest of fostering an open and welcoming environment, we as
+contributors and maintainers pledge to make participation in our project and
+our community a harassment-free experience for everyone, regardless of age, body
+size, disability, ethnicity, sex characteristics, gender identity and expression,
+level of experience, education, socio-economic status, nationality, personal
+appearance, race, religion, or sexual identity and orientation.
+
+## Our Standards
+
+Examples of behavior that contributes to creating a positive environment
+include:
+
+* Using welcoming and inclusive language
+* Being respectful of differing viewpoints and experiences
+* Gracefully accepting constructive criticism
+* Focusing on what is best for the community
+* Showing empathy towards other community members
+
+Examples of unacceptable behavior by participants include:
+
+* The use of sexualized language or imagery and unwelcome sexual attention or
+ advances
+* Trolling, insulting/derogatory comments, and personal or political attacks
+* Public or private harassment
+* Publishing others' private information, such as a physical or electronic
+ address, without explicit permission
+* Other conduct which could reasonably be considered inappropriate in a
+ professional setting
+
+## Our Responsibilities
+
+Project maintainers are responsible for clarifying the standards of acceptable
+behavior and are expected to take appropriate and fair corrective action in
+response to any instances of unacceptable behavior.
+
+Project maintainers have the right and responsibility to remove, edit, or
+reject comments, commits, code, wiki edits, issues, and other contributions
+that are not aligned to this Code of Conduct, or to ban temporarily or
+permanently any contributor for other behaviors that they deem inappropriate,
+threatening, offensive, or harmful.
+
+## Scope
+
+This Code of Conduct applies within all project spaces, and it also applies when
+an individual is representing the project or its community in public spaces.
+Examples of representing a project or community include using an official
+project e-mail address, posting via an official social media account, or acting
+as an appointed representative at an online or offline event. Representation of
+a project may be further defined and clarified by project maintainers.
+
+## Enforcement
+
+Instances of abusive, harassing, or otherwise unacceptable behavior may be
+reported by contacting the project team at [INSERT EMAIL ADDRESS]. All
+complaints will be reviewed and investigated and will result in a response that
+is deemed necessary and appropriate to the circumstances. The project team is
+obligated to maintain confidentiality with regard to the reporter of an incident.
+Further details of specific enforcement policies may be posted separately.
+
+Project maintainers who do not follow or enforce the Code of Conduct in good
+faith may face temporary or permanent repercussions as determined by other
+members of the project's leadership.
+
+## Attribution
+
+This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
+available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
+
+[homepage]: https://www.contributor-covenant.org
+
+For answers to common questions about this code of conduct, see
+https://www.contributor-covenant.org/faq
+
diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md
new file mode 100644
index 0000000..e69de29
diff --git a/README.md b/README.md
index bd10de8..ce90c40 100644
--- a/README.md
+++ b/README.md
@@ -1,14 +1,46 @@
-# Link Warden
-### A bookmark + archive manager for all your links and resources.
+
+
+LinkWarden
+
+A place for your useful links.
+
+![GitHub](https://img.shields.io/github/license/daniel31x13/link-warden?style=flat-square) ![GitHub top language](https://img.shields.io/github/languages/top/daniel31x13/link-warden?style=flat-square) ![GitHub commit activity](https://img.shields.io/github/commit-activity/m/daniel31x13/link-warden?style=flat-square) ![GitHub last commit](https://img.shields.io/github/last-commit/daniel31x13/link-warden?style=flat-square)
+
-> Note: Still under development...
+
+
+## Intro & Motivation
+**LinkWarden is a self-hosted, open-source bookmark + archive manager to collect, and save websites for offline use.**
+
+The objective is to have a self-hosted place to keep useful links in one place, and since useful links can go away (see the inevitability of [Link Rot](https://www.howtogeek.com/786227/what-is-link-rot-and-how-does-it-threaten-the-web/)), LinkWarden also saves a copy of the link as screenshot and PDF.
+
+## Features
+- [x] Sleek, minimalist design.
+- [x] Save a copy of each link as screenshot and PDF.
+- [x] Dark/Light mode support.
+- [x] Responsive design.
+- [x] Search, filter and sorting functionality.
+- [x] Lazy loading support (for better performance).
+- [x] Set multiple tags to each link.
+
+### Other planned features
+(These are not 100% guaranteed, they're just idea's.)
+- [ ] Add time stamps to links.
+- [ ] Browser extenstions.
+- [ ] Docker support.
+- [ ] Save as [SingleFile](https://github.com/gildas-lormeau/SingleFile).
+- [ ] Folder support.
+- [ ] Sidenav.
+- [ ] A design logo.
+
+> **To make a pull request please take a look at our [contributing guidelines](.github/CONTRIBUTING.md).**
## Setup
-### Linux/MacOS:
+### Linux/MacOS
1. Make sure the MongoDB database and collection is up and running.
2. Edit `/src/config.js` accordingly.
-3. Head to the main folder using terminal and run: `(cd api && npm install --legacy-peer-deps) && npm install --legacy-peer-deps` for the dependancies.
+3. Head to the main folder using terminal and run: `(cd api && npm install) && npm install --legacy-peer-deps` for the dependancies.
-4. Run `(cd api && npm run dev) & npm start` to start the application.
\ No newline at end of file
+4. Run `npm start` to start the application.
diff --git a/api/package.json b/api/package.json
index 7a58c56..baac0a2 100644
--- a/api/package.json
+++ b/api/package.json
@@ -1,7 +1,7 @@
{
"name": "link-warden-api",
"version": "1.0.0",
- "description": "Link Warden backend",
+ "description": "LinkWarden backend",
"main": "server.js",
"scripts": {
"dev": "nodemon server.js"
diff --git a/package.json b/package.json
index 9bc8062..2ec9a8e 100644
--- a/package.json
+++ b/package.json
@@ -1,7 +1,7 @@
{
"name": "link-warden",
"version": "0.1.0",
- "description": "A bookmark + archive manager for all your links and resources.",
+ "description": "A place for all your links and resources.",
"private": true,
"dependencies": {
"@testing-library/jest-dom": "^5.16.4",
@@ -17,7 +17,8 @@
"web-vitals": "^2.1.4"
},
"scripts": {
- "start": "react-scripts start",
+ "start": " (cd api && npm run dev) & npm run go",
+ "go": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"
diff --git a/src/config.js b/src/config.js
index e5c1bd7..1d88df8 100644
--- a/src/config.js
+++ b/src/config.js
@@ -1,10 +1,12 @@
+// Note: the formatting are really sensitive so for example DO NOT end
+// the "STORAGE_LOCATION" path with an extra slash "/" (i.e. "/home/")
module.exports = {
"API": {
- "ADDRESS": "http://192.168.1.7",
- "PORT": 5000,
- "MONGODB_URI": "mongodb://localhost:27017",
- "DB_NAME": "sample_db",
- "COLLECTION_NAME": "list",
- "STORAGE_LOCATION": "/home/danny/Documents"
+ "ADDRESS": "http://192.168.1.7", // IP address of the computer which LinkWarden is running
+ "PORT": 5000, // The api port
+ "MONGODB_URI": "mongodb://localhost:27017", // MongoDB link
+ "DB_NAME": "sample_db", // MongoDB database name
+ "COLLECTION_NAME": "list", // MongoDB collection name
+ "STORAGE_LOCATION": "/home/danny/Documents" // The path to store the archived data
}
}
\ No newline at end of file