Questions tagged [project-structure]

Structure of files, folders and repositories used to organize project artifacts

Filter by
Sorted by
Tagged with
1 vote
0 answers
88 views

How to structure your Python code with asynchronous and synchronous parts

I have a Python FastAPI server application which naturally guides you towards the asynchronous paradigm. For legacy reasons, I have to support two backends, one which is purely synchronous and one ...
1 vote
1 answer
409 views

Designing Clean Architecture(Hexagonal) for a Spring Boot Application : Project Layout and Class Organization

I'm currently in the process of integrating Clean Architecture into my Spring Boot project and I'm seeking advice on the ideal project structure and the types of classes and projects that should be ...
0 votes
2 answers
2k views

Best practices for adding Node.JS build features to a non-Node project

The primary use for Node.JS is of course as a full server stack, and I've used it in that manner to great success. However, a number of useful, interesting NPM packages deal with things like ...
0 votes
0 answers
42 views

Package by feature for APIs that are exporting or / and importing data

We are generally following the package-by-feature approach, which is great. However, one specific case is constantly causing confusion and inconsistencies, and I'd like to know your approaches in this ...
5 votes
1 answer
2k views

Project structure with git submodules with common dependencies

I have two (and more in the future) Python projects that I'd like to package into a global package in order to import its modules and use them in another external projects in the future. This is how ...
1 vote
2 answers
237 views

Where to put DLL specific settings?

I'm not sure how to manage configuration settings in a C#/.NET environment. For simplicity lets say I have 3 assemblies: My MainApplication is the project being started and containing the business ...
0 votes
1 answer
128 views

Should you add the name of the package to the module/package name in Python? [closed]

I'm looking for some best practices for readability (and clean code in general) for naming modules/classes within more extensive projects. More specifically, is it reasonable to add the package's name ...
7 votes
3 answers
6k views

Is it a good idea to share repositories across microservices in Spring Boot Application?

We are migrating a desktop application into web based Spring Boot micro services application with a client imposed mandate of using their existing MySQL database, so all micro services share a common ...
2 votes
2 answers
162 views

How should I structure an update script that handles the output of another module?

I have a large (>1,000 LOC) Python ETL script - call it fetch_and_transform_data.py - that fetches data from a remote database, appends the raw data to a local table, does some transformations and ...
0 votes
3 answers
345 views

What is the difference between these two MVC diagrams?

I want to understand what is the main difference in these two diagrams when it comes to the Model-View-Controller pattern. If there is a difference, how should I choose to construct my program? What ...
0 votes
0 answers
49 views

Publish a trivial libraries separately or as a collection

As an individual developer, I often find need to write a trivial (let's say, under 100 SLOC + tests + docs + build system config) library that helps me to write code of some other (large) project in a ...
0 votes
1 answer
174 views

Where should research and production code reside in git?

We have research code that consists of Jupyter notebooks and large data files. At the same time, we also have production code that consists of Python source and CloudFormation templates. There is ...
1 vote
1 answer
157 views

Is it an acceptable pattern to put derived classes inside an abstract base class in Java?

Suppose I have some Java code such as the following (in this case, the use of the name "interaction" is referring to interacting with an object in a video game): public abstract class ...
107 votes
3 answers
38k views

Folder-by-type or Folder-by-feature

I make use of an AngularJS style guide. Within this guide there is a style called folder-by-feature, instead of folder-by-type, and I'm actually curious what's the best approach (in this example for ...
0 votes
0 answers
204 views

Git - nest an optional repository inside a repository

I have an existing repository (which is organised using the standard Golang project layout) cmd/ bigproject/ main.go internal/ ... pkg/ ... vendor/ ... What I would like to do ...
4 votes
5 answers
683 views

How to prevent in house frameworks and libraries from becoming technical debt

My company develops many relatively small projects that a lot of times do the same things and have a similar structure. (e.g. read/write to a databse, data pre processing, building a query etc.). This ...
0 votes
0 answers
52 views

Database versioning when testing layered design

Let's say there are two layers of an application: Business logic layer Data access layer Assume integration tests need to be written also for the Business logic layer. Alas tests that run against ...
0 votes
1 answer
2k views

Where should interfaces/model definitions live? -- Clean architecture

I'm working on a Node project (in typescript) that features a variation of clean architecture. I have a pretty clear understanding of the different layers of an application and how they depend on each ...
15 votes
6 answers
15k views

What use is a Business Logic Layer (BLL)?

In reading up on good practice for database applications I've frequently come across advocates of so-called "business logic layers" and I'm trying to decide if it's best for my project to use one (it'...
15 votes
3 answers
24k views

best way to install local package into docker image

I have a python package that I wrote and I want to use it within multiple docker builds. However, I can't just install my local package situated outside of Dockerfile folder. And I don't want to ...
1 vote
2 answers
1k views

Is it simply Cleaning or Refactoring?

I am working on a project in C++, and I have a big CPP file with several functions in it. I am actually working on splitting all these functions into smaller cpp files to make it more readable. I was ...
0 votes
1 answer
154 views

When does it become appropriate to make http calls?

Background: different developers are building an e-commerce system using Spring. Some are working on the user facing arm, others are working on the CMS, while the other group are working on the vendor ...
11 votes
4 answers
10k views

How can I effectively use one file per class in C++?

Even though I have a decent bit of professional experience with object oriented programming in Java and a basic familiarity with C, I've run into a bit of a mental block with C++ that I was hoping ...
1 vote
1 answer
3k views

What is the idiomatic way to split code between separate files in Rust?

Coming from the world of C#, where, despite sharing namespaces, it's quite common for every class to have its own file, I find that Rust codebases seem to have a complete different sort of philosophy (...
-2 votes
1 answer
447 views

Structure project by inheritance?

The usual approach is to do what libraries do: group your (single file) classes by component where folder = namespace, right? That makes sense for code that is mostly meant to be used by other ...
6 votes
1 answer
7k views

What is a proper way to structure a Python project consisting of smaller packages that have shared code?

I have been debating this question internally for a few weeks now and I keep coming up short in finding a good answer to the question. I feel an example would be more descriptive than just talking ...
4 votes
1 answer
125 views

Project icons / images organization

I am asking a question about the overall architecture between different projects. Let's say I want to centralize all icons / images between different projects in a single repository. This means that ...
1 vote
1 answer
141 views

Best practices when combining development environments

I'm working on a Swift-project (an iOS-app) where a webview is used to show an HTML-document. This document is manipulated by some JS, which is compiled and minified from TypeScript. There's also SASS ...
1 vote
1 answer
124 views

Improvement of the config file management

I am working on a personal project for more than 6 months now, this project is composed of three distinct parts, simulation (wrapping a software), database related stuff (store the simulated data in a ...
-2 votes
1 answer
37 views

Is this a proper way to architect my network security testing tool?

I am planning on creating a network security testing tool with python that carries out a variety of attacks and tests other vulnerability issues on a host (Such as: Ping of death, slow loris, teardrop ...
-2 votes
1 answer
636 views

Best practice: keep DB models in one file or split into modules?

I've a Python project with ~30 SQLAlchemy models and I'm not sure where they belong. All models belong to the DB but also to a module, so I'm not sure about the right namespace. Here are some ideas: ...
7 votes
2 answers
7k views

What's the best way to handle a large multi-file class in Javascript?

I have a very large class of 59 methods and about 3000 lines of code. I know that's far larger than most people would want, but the class represents a virtual machine, and most of the methods are run ...
0 votes
2 answers
176 views

Cases of memory management where it is reasonable to separate program into several execs

I have 5000+ strings pet-project for CLI and it can do some optional calculations and can output results to CLI or/and to file. Some new modules don't work. Now I catch with GDB some strange segfaults ...
26 votes
3 answers
59k views

What's the best structure for a repository? [closed]

I've looked into many open source software repositories, and I've found some common elements and somethings people do in different fashion from one another. For example, every repository has a README ...
4 votes
3 answers
229 views

Creating sub-classes of all external classes

I am in a team developing Android applications in an enterprise corporate .One of team members suggested that we should create our own classes, so extending every classes of UI kit (Material Design). ...
73 votes
4 answers
22k views

What's in the "contrib" folder?

Often open-source software projects have a folder called "contrib". For example, Django has one. What is it for?
2 votes
1 answer
5k views

Interfaces between multiple projects

I'm slightly confused over the following: ProjectA -------- GetUsers (Implements IDBConnector) -------- IGetUsers -------- UserModel ProjectB -------- Main I have two projects one main project (...
-4 votes
1 answer
244 views

When to use dot files in Git repositories?

My Git repository contains dot files required by my tooling: .dockerignore .gitignore .pre-commit-config.yaml I'm using Azure Pipelines for CI/CD, which is typically defined in azure-pipelines.yml, ...
1 vote
1 answer
2k views

Logging to database in ASP.NET Core Entity Framework Core application

I have an ASP.NET Core Entity Framework Core application and I want to implement my own custom logger. I don't want to use ready solutions like NLog or Serilog. I added a new class library project ("...
-2 votes
1 answer
125 views

In C++, does it make sens to have library project be composed of other libraries?

I'm working on a C++ project which is currently divided into "sub modules" / "components". Each of these are compiled into a separate library (components are usually 10-20 files). The libraries are ...
0 votes
1 answer
996 views

How to structure separate projects in a single solution? i.e project.Domain etc in C#

So this is a very beginner question, so please do be patient with me: But I am building a little practice project and what I am struggling to understand is the overall structure of the solution, in ...
0 votes
1 answer
488 views

To structure big and expandable project(s)

TLDR with bold I want to create a library (I think this is the right term) for my own reinforcement learning environments (envs for short). Most of the envs would be based on self-implemented games ...
3 votes
2 answers
2k views

Should I break down test class into multiple files?

I have a test class with about 25 tests that are testing the different aspect of it. I wonder Should I break it down into smaller classes? If so, then what is the best naming/packaging convention? ...
0 votes
1 answer
303 views

C++ Project Structure in UNIX/Linux environment: test and app folder

I am trying to figure out the right project structure for C++ and I am working on Ubuntu using CMake. I mostly work on AI/ Robotics/ Data Science. Assume that I want to generate executables and ...
-1 votes
1 answer
605 views

Naming my classes and class folders in PHP project

I am working on an (PHP) application where users have so called workspaces. A workspace is a folder with a specific structure and bunch of specific files - user information and some workspace metadata ...
2 votes
2 answers
449 views

Should powershell be used to develop a whole application?

We are automating the testing on an Web ERP solution (Dynamics) through a tool (RSAT, which uses selenium) provided by the developer of the ERP (Microsoft). The RSAT has a list of instructions to do ...
1 vote
3 answers
277 views

Where do you put your profiling code?

I just developed an algorithm and additional to the usual unit tests I wrote a profiling "test" that I was using to measure and optimize its performance. It is structured similar to a test (arrange: ...
0 votes
0 answers
455 views

Implement multiple file upload with Dropzone.js , Lambda and S3

This is more a general question about this project I have on. We need to implement some UI for our costumers to upload multiple files (2000+) every month, so we can send them by email to another ...
2 votes
1 answer
1k views

Appropriates names for Api implementation and Api Client Library

Suppose I have a big project, called Northwind. It's a website in front of a database. Now management want me to create a public API for this. I create a new ASP.NET Core project called Northwind.Api ...
1 vote
0 answers
59 views

"Add-On" Projects and ASP.NET Core with Entity Framework

I've created a .NET Core MVC product with Entity Framework, and am being tasked with creating "Add-on" products, which give CRUD operations to more tables, but use the same library functions and UI. ...