Creates empty cli and lib targets and configures git ignore rules.

This commit is contained in:
2026-08-23 04:25:13 -07:00
parent 8f6ec29b99
commit a9c94adf0b
11 changed files with 125 additions and 4 deletions

20
.editorconfig Normal file
View File

@@ -0,0 +1,20 @@
# http://editorconfig.org
root = true
[*]
indent_style = space
indent_size = 4
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true
[*.{json,yaml,yml}]
indent_size = 2
[*.md]
trim_trailing_whitespace = false
indent_size = 2
[Makefile]
indent_style = tab

42
.gitignore vendored
View File

@@ -0,0 +1,42 @@
# Rust build artifacts
/target/
**/target/
**/*.rs.bk
# Cargo local configs
.cargo/config.toml.local
# Tauri & frontend artifacts
node_modules/
**/dist/
**/build/
# JetBrains / RustRover / IntelliJ
.idea/workspace.xml
.idea/shelf/
.idea/dataSources/
.idea/dataSources.local.xml
.idea/httpRequests/
.idea/queries/
*.iml
# Visual Studio Code
.vscode/*
!.vscode/settings.json
!.vscode/tasks.json
!.vscode/launch.json
!.vscode/extensions.json
# OS specific files
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
ehthumbs.db
Thumbs.db
# Local environment & secret files
.env
.env.*
*.local

10
.idea/.gitignore generated vendored Normal file
View File

@@ -0,0 +1,10 @@
# Default ignored files
/shelf/
/workspace.xml
# Editor-based HTTP Client requests
/httpRequests/
# Ignored default folder with query files
/queries/
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml

8
.idea/modules.xml generated Normal file
View File

@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/NextcloudUploadTool.iml" filepath="$PROJECT_DIR$/.idea/NextcloudUploadTool.iml" />
</modules>
</component>
</project>

6
.idea/vcs.xml generated Normal file
View File

@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="" vcs="Git" />
</component>
</project>

6
Cargo.toml Normal file
View File

@@ -0,0 +1,6 @@
[workspace]
members = [
"nextcloud_client",
"cli",
]
resolver = "3"

View File

@@ -69,7 +69,7 @@ This document defines the complete project roadmap and task tracking system for
| ID | Title | Status | Type |
|---|---|---|---|
| [NUT-001](#nut-001) | Establish Repository Structure | Pending | Foundation |
| [NUT-001](#nut-001) | Establish Repository Structure | In Progress | Foundation |
| [NUT-002](#nut-002) | Implement Shared Rust Backend Library | Triage | Foundation |
| [NUT-003](#nut-003) | Implement WebDAV Upload Logic | Triage | Feature |
| [NUT-004](#nut-004) | Implement OCS Share Link Generation | Triage | Feature |
@@ -95,10 +95,10 @@ This document defines the complete project roadmap and task tracking system for
<a id="task-details"></a>
## Detailed Tasks
<a id="nut-001" class="task" data-status="pending" data-task-type="foundation"></a>
<a id="nut-001" class="task" data-status="in_progress" data-task-type="foundation"></a>
### Establish Repository Structure
**ID:** NUT-001
**Status:** Pending
**Status:** In Progress
**Type:** Foundation
**Description:**
@@ -522,7 +522,7 @@ Tasks progress through defined statuses:
- **Task ID Schema**: `${project.prefix}-XXX` where `XXX` is a zero-padded monotonic 3-digit number (e.g. `NUT-001`).
- IDs must be monotonic and never renumbered or reused.
- Anchor IDs are lowercase: `<a id="nut-001" class="task" data-status="pending" data-task-type="foundation"></a>`.
- Anchor IDs are lowercase: `<a id=\"nut-001\" class=\"task\" data-status=\"pending\" data-task-type=\"foundation\"></a>`.
- Table and header IDs are uppercase: `[NUT-001](#nut-001)`.
- Dependencies list **direct dependencies only** (no transitive dependencies).
- Checklists must use standard GitHub Markdown `- [ ]` and `- [x]`.

6
cli/Cargo.toml Normal file
View File

@@ -0,0 +1,6 @@
[package]
name = "nut"
version = "0.1.0"
edition = "2024"
[dependencies]

3
cli/src/main.rs Normal file
View File

@@ -0,0 +1,3 @@
fn main() {
println!("Hello, world!");
}

View File

@@ -0,0 +1,6 @@
[package]
name = "nextcloud_client"
version = "0.1.0"
edition = "2024"
[dependencies]

View File

@@ -0,0 +1,14 @@
pub fn add(left: u64, right: u64) -> u64 {
left + right
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn it_works() {
let result = add(2, 2);
assert_eq!(result, 4);
}
}