flutter_calendar 0.0.8
flutter_calendar #
A calendar widget for Flutter Apps.
Borrowed DateTime utility functions from the Tzolkin Calendar web element.
Usage #
Add to your pubspec dependencies:
flutter_calendar: ^0.0.1
Render the map with one of three options:
1. Default, Material Design #
new Calendar()
2. An Expandable Map #
new Calendar(
isExpandable: true;
)
3. Customize It (Standard or Expandable) #
new Calendar(
// A builder function that renders each calendar tile how you'd like.
dayBuilder: new Text('!')
)
API #
// Three optional params:
final VoidCallback onDateSelected;
final bool isExpandable;
final Widget dayBuilder;
import 'package:flutter/material.dart';
import 'package:flutter_calendar/flutter_calendar.dart';
main() {
runApp(new CalendarViewApp());
}
class CalendarViewApp extends StatelessWidget {
void handleNewDate(date) {
print("handleNewDate ${date}");
}
@override
Widget build(BuildContext context) {
return new MaterialApp(
title: 'Flutter Demo',
theme: new ThemeData(
primarySwatch: Colors.purple,
),
home: new Scaffold(
appBar: new AppBar(
title: new Text('Flutter Calendar'),
),
body: new Container(
margin: new EdgeInsets.symmetric(
horizontal: 5.0,
vertical: 10.0,
),
child: new ListView(
shrinkWrap: true,
children: <Widget>[
new Text('The Default Calendar:'),
new Calendar(
onSelectedRangeChange: (range) =>
print("Range is ${range.item1}, ${range.item2}"),
onDateSelected: (date) => handleNewDate(date),
),
new Divider(
height: 50.0,
),
new Text('The Expanded Calendar:'),
new Calendar(
onSelectedRangeChange: (range) =>
print("Range is ${range.item1}, ${range.item2}"),
isExpandable: true,
),
new Divider(
height: 50.0,
),
new Text('A Custom Weekly Calendar:'),
new Calendar(
onSelectedRangeChange: (range) =>
print("Range is ${range.item1}, ${range.item2}"),
isExpandable: true,
dayBuilder: (BuildContext context, DateTime day) {
return new InkWell(
onTap: () => print("OnTap ${day}"),
child: new Container(
decoration: new BoxDecoration(
border: new Border.all(color: Colors.black38)),
child: new Text(
day.day.toString(),
),
),
);
},
),
],
),
),
),
);
}
}
Use this package as a library
1. Depend on it
Add this to your package's pubspec.yaml file:
dependencies:
flutter_calendar: ^0.0.8
2. Install it
You can install packages from the command line:
with Flutter:
$ flutter pub get
Alternatively, your editor might support flutter pub get
.
Check the docs for your editor to learn more.
3. Import it
Now in your Dart code, you can use:
import 'package:flutter_calendar/flutter_calendar.dart';
Popularity:
Describes how popular the package is relative to other packages.
[more]
|
93
|
Health:
Code health derived from static analysis.
[more]
|
100
|
Maintenance:
Reflects how tidy and up-to-date the package is.
[more]
|
24
|
Overall:
Weighted score of the above.
[more]
|
81
|
We analyzed this package on Dec 5, 2019, and provided a score, details, and suggestions below. Analysis was completed with status completed using:
- Dart: 2.6.1
- pana: 0.12.21
- Flutter: 1.9.1+hotfix.6
Platforms
Detected platforms: Flutter
References Flutter, and has no conflicting libraries.
Maintenance issues and suggestions
Provide a file named CHANGELOG.md
. (-20 points)
Changelog entries help developers follow the progress of your package. See the example generated by stagehand
.
Support latest dependencies. (-10 points)
The version constraint in pubspec.yaml
does not support the latest published versions for 1 dependency (intl
).
The package description is too short. (-16 points)
Add more detail to the description
field of pubspec.yaml
. Use 60 to 180 characters to describe the package, what it does, and its target use case.
Package is getting outdated. (-13.70 points)
The package was last published 59 weeks ago.
Package is pre-v0.1 release. (-10 points)
While nothing is inherently wrong with versions of 0.0.*
, it might mean that the author is still experimenting with the general direction of the API.
Update README.md
. (-6 points)
3 image links are insecure (e.g. http://res.cloudinary.com/ericwindmill/image/upload/c_scale,h_500/v1518649521/flutter_calendar_standard_lu6l9i.gif
), use https
URLs instead.
Dependencies
Package | Constraint | Resolved | Available |
---|---|---|---|
Direct dependencies | |||
Dart SDK | >=2.0.0 <3.0.0 | ||
date_utils | ^0.1.0 | 0.1.0+2 | |
flutter | 0.0.0 | ||
intl | ^0.15.0 | 0.15.8 | 0.16.0 |
tuple | ^1.0.1 | 1.0.3 | |
Transitive dependencies | |||
collection | 1.14.11 | 1.14.12 | |
matcher | 0.12.6 | ||
meta | 1.1.7 | 1.1.8 | |
path | 1.6.4 | ||
quiver | 2.1.2+1 | ||
sky_engine | 0.0.99 | ||
stack_trace | 1.9.3 | ||
typed_data | 1.1.6 | ||
vector_math | 2.0.8 | ||
Dev dependencies | |||
flutter_test |