mirror of
https://github.com/RoastSlav/quickdrop.git
synced 2025-12-30 19:20:14 -06:00
fixed README.md
This commit is contained in:
312
README.md
312
README.md
@@ -4,217 +4,52 @@
|
||||
|
||||
# QuickDrop
|
||||
|
||||
QuickDrop
|
||||
is
|
||||
an
|
||||
easy-to-use
|
||||
file
|
||||
sharing
|
||||
application
|
||||
that
|
||||
allows
|
||||
users
|
||||
to
|
||||
upload
|
||||
files
|
||||
without
|
||||
an
|
||||
account,
|
||||
generate
|
||||
download
|
||||
links,
|
||||
and
|
||||
manage
|
||||
file
|
||||
availability,
|
||||
file
|
||||
encryption
|
||||
and
|
||||
optional
|
||||
password
|
||||
QuickDrop is an easy-to-use file sharing application that allows users to upload files without an account,
|
||||
generate download links, and manage file availability, file encryption and optional password
|
||||
protection.
|
||||
|
||||
|
||||
## Features
|
||||
|
||||
-
|
||||
*
|
||||
*File
|
||||
Upload
|
||||
**:
|
||||
Users
|
||||
can
|
||||
upload
|
||||
files
|
||||
without
|
||||
needing
|
||||
to
|
||||
create
|
||||
an
|
||||
account.
|
||||
-
|
||||
*
|
||||
*Download
|
||||
Links
|
||||
**:
|
||||
Generate
|
||||
download
|
||||
links
|
||||
for
|
||||
easy
|
||||
sharing.
|
||||
-
|
||||
*
|
||||
*File
|
||||
Management
|
||||
**:
|
||||
Manage
|
||||
file
|
||||
availability
|
||||
with
|
||||
options
|
||||
to
|
||||
keep
|
||||
files
|
||||
indefinitely
|
||||
or
|
||||
delete
|
||||
them.
|
||||
-
|
||||
*
|
||||
*Password
|
||||
Protection
|
||||
**:
|
||||
Optionally
|
||||
protect
|
||||
files
|
||||
with
|
||||
a
|
||||
password.
|
||||
-
|
||||
*
|
||||
*File
|
||||
Encryption
|
||||
**:
|
||||
Encrypt
|
||||
files
|
||||
to
|
||||
ensure
|
||||
privacy.
|
||||
-
|
||||
*
|
||||
*Whole
|
||||
app
|
||||
password
|
||||
protection
|
||||
**:
|
||||
Optionally
|
||||
protect
|
||||
the
|
||||
entire
|
||||
app
|
||||
with
|
||||
a
|
||||
password.
|
||||
- **File Upload**: Users can upload files without needing to create an account.
|
||||
- **Download Links**: Generate download links for easy sharing.
|
||||
- **File Management**: Manage file availability with options to keep files indefinitely or delete them.
|
||||
- **Password Protection**: Optionally protect files with a password.
|
||||
- **File Encryption**: Encrypt files to ensure privacy.
|
||||
- **Whole app password protection**: Optionally protect the entire app with a password.
|
||||
|
||||
## Technologies Used
|
||||
|
||||
-
|
||||
*
|
||||
*Java
|
||||
**
|
||||
-
|
||||
*
|
||||
*SQLite
|
||||
**
|
||||
-
|
||||
*
|
||||
*Spring
|
||||
Framework
|
||||
**
|
||||
-
|
||||
*
|
||||
*Spring
|
||||
Security
|
||||
**
|
||||
-
|
||||
*
|
||||
*Spring
|
||||
Data
|
||||
JPA (
|
||||
Hibernate)
|
||||
**
|
||||
-
|
||||
*
|
||||
*Spring
|
||||
Web
|
||||
**
|
||||
-
|
||||
*
|
||||
*Spring
|
||||
Boot
|
||||
**
|
||||
-
|
||||
*
|
||||
*Thymeleaf
|
||||
**
|
||||
-
|
||||
*
|
||||
*Bootstrap
|
||||
**
|
||||
-
|
||||
*
|
||||
*Maven
|
||||
**
|
||||
- **Java**
|
||||
- **SQLite**
|
||||
- **Spring Framework**
|
||||
- **Spring Security**
|
||||
- **Spring Data JPA (Hibernate)**
|
||||
- **Spring Web**
|
||||
- **Spring Boot**
|
||||
- **Thymeleaf**
|
||||
- **Bootstrap**
|
||||
- **Maven**
|
||||
|
||||
## Getting Started
|
||||
|
||||
### Installation
|
||||
|
||||
*
|
||||
*Installation
|
||||
with
|
||||
Docker
|
||||
**
|
||||
**Installation with Docker**
|
||||
|
||||
1.
|
||||
Pull
|
||||
the
|
||||
Docker
|
||||
image:
|
||||
1. Pull the Docker image:
|
||||
|
||||
```
|
||||
docker pull roastslav/quickdrop:latest
|
||||
```
|
||||
|
||||
2.
|
||||
Run
|
||||
the
|
||||
Docker
|
||||
container:
|
||||
2. Run the Docker container:
|
||||
|
||||
```
|
||||
docker run -d -p 8080:8080 roastslav/quickdrop:latest
|
||||
```
|
||||
|
||||
Optional:
|
||||
Use
|
||||
a
|
||||
volume
|
||||
to
|
||||
persist
|
||||
the
|
||||
uploaded
|
||||
files
|
||||
or
|
||||
if
|
||||
you
|
||||
want
|
||||
to
|
||||
change
|
||||
the
|
||||
default
|
||||
configuration:
|
||||
Optional: Use a volume to persist the uploaded files or if you want to change the default configuration:
|
||||
|
||||
```
|
||||
docker run -d -p 8080:8080 \
|
||||
@@ -224,95 +59,38 @@ docker run -d -p 8080:8080 \
|
||||
quickdrop
|
||||
```
|
||||
|
||||
*
|
||||
*Installation
|
||||
without
|
||||
Docker
|
||||
**
|
||||
**Installation without Docker**
|
||||
|
||||
Prerequisites
|
||||
|
||||
-
|
||||
Java
|
||||
21
|
||||
or
|
||||
higher
|
||||
-
|
||||
Maven
|
||||
-
|
||||
SQLite
|
||||
- Java 21 or higher
|
||||
- Maven
|
||||
- SQLite
|
||||
|
||||
1.
|
||||
Clone
|
||||
the
|
||||
repository:
|
||||
1. Clone the repository:
|
||||
|
||||
```
|
||||
git clone https://github.com/RoastSlav/quickdrop.git
|
||||
cd quickdrop
|
||||
```
|
||||
|
||||
2.
|
||||
Build
|
||||
the
|
||||
application:
|
||||
2. Build the application:
|
||||
|
||||
```
|
||||
mvn clean package
|
||||
```
|
||||
|
||||
3.
|
||||
Run
|
||||
the
|
||||
application:
|
||||
3. Run the application:
|
||||
|
||||
```
|
||||
java -jar target/quickdrop-0.0.1-SNAPSHOT.jar
|
||||
```
|
||||
|
||||
4.
|
||||
Using
|
||||
an
|
||||
external
|
||||
application.properties
|
||||
file:
|
||||
-
|
||||
Create
|
||||
an
|
||||
*
|
||||
*application.properties
|
||||
**
|
||||
file
|
||||
in
|
||||
the
|
||||
same
|
||||
directory
|
||||
as
|
||||
the
|
||||
JAR
|
||||
file
|
||||
or
|
||||
specify
|
||||
its
|
||||
location
|
||||
in
|
||||
the
|
||||
start
|
||||
command.
|
||||
4. Using an external application.properties file:
|
||||
- Create an **application.properties** file in the same directory as the JAR file or specify its location in the
|
||||
start command.
|
||||
|
||||
-
|
||||
Add
|
||||
your
|
||||
custom
|
||||
settings,
|
||||
for
|
||||
example (
|
||||
Listed
|
||||
below
|
||||
are
|
||||
the
|
||||
default
|
||||
values):
|
||||
- Add your custom settings, for example (Listed below are the default values):
|
||||
|
||||
```
|
||||
file.save.path=files
|
||||
@@ -324,14 +102,7 @@ app.enable.password=false
|
||||
max-upload-file-size=1GB
|
||||
```
|
||||
|
||||
-
|
||||
Run
|
||||
the
|
||||
application
|
||||
with
|
||||
the
|
||||
external
|
||||
configuration:
|
||||
- Run the application with the external configuration:
|
||||
|
||||
```
|
||||
java -jar target/quickdrop-0.0.1-SNAPSHOT.jar --spring.config.location=./application.properties
|
||||
@@ -339,17 +110,4 @@ java -jar target/quickdrop-0.0.1-SNAPSHOT.jar --spring.config.location=./applica
|
||||
|
||||
## License
|
||||
|
||||
This
|
||||
project
|
||||
is
|
||||
licensed
|
||||
under
|
||||
the
|
||||
MIT
|
||||
License.
|
||||
See
|
||||
the
|
||||
`LICENSE`
|
||||
file
|
||||
for
|
||||
details.
|
||||
This project is licensed under the MIT License. See the `LICENSE` file for details.
|
||||
|
||||
Reference in New Issue
Block a user