Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Dart project structure for apps (not libs)

I am trying to understand Dart's recommended project structure and not seeing the "forest through the trees".

So, if my project is intended to be a reusable library, say, a logging framework of some sort, then if I understand the above link correctly, I want all of my development to be under a lib and lib/src directory.

But what if I am building a web app? Where do my Dart source files go? Under packages? Specifically:

  1. Where do I place Dart source files for a web app (not a lib)?
  2. Are my web app's "packages" just directories that are logically organized similar to Java packages?
  3. Does Dart recommend a 1-class-per-file convention for its source code?
like image 694
IAmYourFaja Avatar asked Dec 22 '13 15:12

IAmYourFaja


People also ask

How should I structure my flutter project?

start from the domain layer and identify the model classes and business logic for manipulating them. create a folder for each model (or group of models) that belong together. within that folder, create the presentation , application , domain , data sub-folders as needed. inside each sub-folder, add all the files you ...

What are the minimal requirements needed for a library in DART?

The minimal requirements for a library are: pubspec file. The pubspec. yaml file for a library is the same as for an application package—there is no special designation to indicate that the package is a library.


1 Answers

1)

  • your_app_package/web
  • your_app_package/web/src/xxx

static content like jpg, css go to * your_app_package/asset

2) the packages directory is maintained automatically. You configure in the file pubspec.yaml which 3rd party libraries you want to use and then call pub get or pub upgrade and the packages directory is updated automatically (the Darteditor does this automatically when you update pubspec.yaml).

3) not that I know of.

I had some problems putting additional classed in the code file of a Polymer element though. But I guess this is just a temporary limitation of Polymer.

like image 188
Günter Zöchbauer Avatar answered Oct 14 '22 01:10

Günter Zöchbauer